Go用gorm操作MySQL数据库:连接、指定表名、表前缀、禁用表名复数、读取
短信预约 -IT技能 免费直播动态提醒
表结构
指定表名
如果不想用GORM默认的数据库表格命名方式,可以自己指定表名。一种方式是给Model绑定TableName方法指定。
type Stu struct {Id intName stringAge intSex string}// TableName 指定表名func (Stu) TableName() string {return "student"}
查询时指定表明
另一种指定表名的方式是使用Table方法。
db.Table("student").First(&student)
代码示例
package mainimport ("fmt"_ "github.com/go-sql-driver/mysql""gorm.io/driver/mysql""gorm.io/gorm""gorm.io/gorm/schema")type Stu struct {Id intName stringAge intSex string}// TableName 指定表名func (Stu) TableName() string {return "student"}var db *gorm.DBvar err errorfunc init() {//dsn格式 user:pass@tcp(ip:port)/dbname?charset=utf8mb4&parseTime=True&loc=Localdsn := "root:password@tcp(127.0.0.1:3306)/test?charset=utf8mb4&parseTime=True&loc=Local"db, err = gorm.Open(mysql.Open(dsn), &gorm.Config{NamingStrategy: schema.NamingStrategy{TablePrefix: "", // 表前缀SingularTable: true, // 禁用表名复数}})if err != nil {panic(err)}}func main() {var student Studb.First(&student) // 取第一条到studentfmt.Println(student)}
参考资料
https://gorm.io/docs/connecting_to_the_database.html
来源地址:https://blog.csdn.net/lilongsy/article/details/127783649
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341