```go
package main
import (
"fmt"
"gorm.io/driver/sqlite"
"gorm.io/gorm"
"time"
)
type User struct {
gorm.Model
Name string
Age int
}
func main() {
// 使用 SQLite 内存数据库进行演示
db, err := gorm.Open(sqlite.Open("file::memory:?cache=shared"), &gorm.Config{})
if err != nil {
panic("failed to connect database")
}
db.AutoMigrate(&User{})
// 使用引用对象
userRef := &User{Name: "John", Age: 25}
resultRef := db.Create(userRef)
fmt.Printf("Reference Object: %+v\n", userRef)
fmt.Printf("RowsAffected: %d\n", resultRef.RowsAffected)
// 使用值对象
userVal := User{Name: "Jane", Age: 30}
resultVal := db.Create(&userVal)
fmt.Printf("Value Object: %+v\n", userVal)
fmt.Printf("RowsAffected: %d\n", resultVal.RowsAffected)
}
```
id 字段均已更新,
package main
import (
"fmt"
"gorm.io/driver/sqlite"
"gorm.io/gorm"
"time"
)
type User struct {
gorm.Model
Name string
Age int
}
func main() {
// 使用 SQLite 内存数据库进行演示
db, err := gorm.Open(sqlite.Open("file::memory:?cache=shared"), &gorm.Config{})
if err != nil {
panic("failed to connect database")
}
db.AutoMigrate(&User{})
// 使用引用对象
userRef := &User{Name: "John", Age: 25}
resultRef := db.Create(userRef)
fmt.Printf("Reference Object: %+v\n", userRef)
fmt.Printf("RowsAffected: %d\n", resultRef.RowsAffected)
// 使用值对象
userVal := User{Name: "Jane", Age: 30}
resultVal := db.Create(&userVal)
fmt.Printf("Value Object: %+v\n", userVal)
fmt.Printf("RowsAffected: %d\n", resultVal.RowsAffected)
}
```
id 字段均已更新,