可以在Bun中使用struct和fieldStruct等类型来定义数据库中的类型。下面是一个示例代码片段:
import "github.com/uptrace/bun" import "github.com/uptrace/bun/dialect/sqlite"
type User struct { ID int64 Name string Email string }
func main() { cfg := &bun.Config{ Dialect: sqlite.New(), Addr: "file::memory:", } db := bun.New(cfg)
user := &User{
Name: "Alice",
Email: "alice@gmail.com",
}
_, err := db.NewInsert().Model(user).Exec(ctx)
...
}
在上述示例中,通过定义User类型,可以在数据库中创建对应的表。user
变量则表示待插入的记录。
需要注意的是,要使用Bun的struct tag来映射字段名和数据库字段名,例如:
type User struct {
ID int64 bun:"id,pk"
Name string bun:"name"
Email string bun:"email"
}
上述struct tag中,id,pk
表示该字段为主键,name
和email
表示对应的数据库字段名。