add a field(LastInsertId) in scope to getLastInsertId
This commit is contained in:
parent
836fb2c19d
commit
4ddf5a8da9
@ -128,6 +128,8 @@ func createCallback(scope *Scope) {
|
|||||||
if result, err := scope.SQLDB().Exec(scope.SQL, scope.SQLVars...); scope.Err(err) == nil {
|
if result, err := scope.SQLDB().Exec(scope.SQL, scope.SQLVars...); scope.Err(err) == nil {
|
||||||
// set rows affected count
|
// set rows affected count
|
||||||
scope.db.RowsAffected, _ = result.RowsAffected()
|
scope.db.RowsAffected, _ = result.RowsAffected()
|
||||||
|
// set lastInsertId
|
||||||
|
scope.db.LastInsertId, _ = result.LastInsertId()
|
||||||
|
|
||||||
// set primary value to primary field
|
// set primary value to primary field
|
||||||
if primaryField != nil && primaryField.IsBlank {
|
if primaryField != nil && primaryField.IsBlank {
|
||||||
|
1
main.go
1
main.go
@ -17,6 +17,7 @@ type DB struct {
|
|||||||
Value interface{}
|
Value interface{}
|
||||||
Error error
|
Error error
|
||||||
RowsAffected int64
|
RowsAffected int64
|
||||||
|
LastInsertId int64
|
||||||
|
|
||||||
// single db
|
// single db
|
||||||
db SQLCommon
|
db SQLCommon
|
||||||
|
3
scope.go
3
scope.go
@ -382,6 +382,9 @@ func (scope *Scope) Exec() *Scope {
|
|||||||
if count, err := result.RowsAffected(); scope.Err(err) == nil {
|
if count, err := result.RowsAffected(); scope.Err(err) == nil {
|
||||||
scope.db.RowsAffected = count
|
scope.db.RowsAffected = count
|
||||||
}
|
}
|
||||||
|
if lastInsertId, err := result.LastInsertId(); scope.Err(err) == nil {
|
||||||
|
scope.db.LastInsertId = lastInsertId
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return scope
|
return scope
|
||||||
|
Loading…
x
Reference in New Issue
Block a user