diff --git a/main.go b/main.go index 047baed2..97cff7db 100644 --- a/main.go +++ b/main.go @@ -454,7 +454,7 @@ func (s *DB) Debug() *DB { // Begin begin a transaction func (s *DB) Begin() *DB { c := s.clone() - if db, ok := c.db.(sqlDb); ok { + if db, ok := c.db.(sqlDb); ok && db != nil { tx, err := db.Begin() c.db = interface{}(tx).(SQLCommon) c.AddError(err) @@ -466,7 +466,7 @@ func (s *DB) Begin() *DB { // Commit commit a transaction func (s *DB) Commit() *DB { - if db, ok := s.db.(sqlTx); ok { + if db, ok := s.db.(sqlTx); ok && db != nil { s.AddError(db.Commit()) } else { s.AddError(ErrInvalidTransaction) @@ -476,7 +476,7 @@ func (s *DB) Commit() *DB { // Rollback rollback a transaction func (s *DB) Rollback() *DB { - if db, ok := s.db.(sqlTx); ok { + if db, ok := s.db.(sqlTx); ok && db != nil { s.AddError(db.Rollback()) } else { s.AddError(ErrInvalidTransaction)