我有一個現(xiàn)有的 mysql 表,它使用 mysql 的UUID_SHORT()函數(shù)來生成唯一的 ID。該表的簡化版本:CREATE TABLE `users` ( `user_uuid` bigint(20) unsigned NOT NULL, `user_name` varchar(64) NOT NULL);并且將通過以下方式創(chuàng)建一個新用戶:INSERT INTO users (user_uuid, user_name) values (UUID_SHORT(), "new user name");我開始使用gorm實現(xiàn) DBs 模型,并且我在創(chuàng)建用戶的新實例時如何告訴 gorm 和數(shù)據(jù)庫/sql 調(diào)用 UUID_SHORT() 空白。來自模型/users.go:package modeltype User struct { UserUUID uint64 `gorm:"column:user_uuid;primary_key:yes";sql:"notnull;default:uuid_short"` UserName string `sql:"notnull"`}func (user User) TableName() string { return "users"}來自模型/users_test.go:package model_testimport ( "testing" ".../model" ".../model/testutil")func TestUserCreate(t *testing.T) { user := model.User{ // UserUUID: **HOW DO I CALL UUID_SHORT() HERE?**, UserName: "Go Test", } // testutil.DB is the successful result of gorm.Open("mysql", ...) testutil.DB.Create(&user)}保存實例時,如何為 user_uuid 列調(diào)用 UUID_SHORT()?
- 1 回答
- 0 關(guān)注
- 160 瀏覽
添加回答
舉報
0/150
提交
取消