01-【gorm】golang常用库:gorm基本使用
程序员文章站
2022-05-08 09:28:29
1、gorm的基本使用https://www.cnblogs.com/jiujuan/p/12676195.html在go中需要定义一个struct, struct的名字就是对应数据库中的表名,注意gorm查找struct名对应数据库中的表名的时候会默认把你的struct中的大写字母转换为小写并加上“s”,所以可以加上 db.SingularTable(true) 让grom转义struct名字的时候不用加上s。gorm在转义表名的时候会把stuct的大写字母(首字母除外) 替换成“_”,如:"...
1、gorm的基本使用
https://www.cnblogs.com/jiujuan/p/12676195.html
- 在go中需要定义一个struct, struct的名字就是对应数据库中的表名,注意gorm查找struct名对应数据库中的表名的时候会默认把你的struct中的大写字母转换为小写并加上“s”,所以可以加上 db.SingularTable(true) 让grom转义struct名字的时候不用加上s。
- gorm在转义表名的时候会把stuct的大写字母(首字母除外) 替换成“_”,如:"XzAutoServerConf "会转义成数数据库中对应“xz_auto_server conf”的表名。
- 对应的字段名的查找会先按照tag里面的名称去里面查找,如果没有定义标签则按照struct定义的字段查找,查找的时候struct字段中的大写字母(首字母除外)会被转义成“_”,如:“GroupZone”会去查找表中的group_zone字段。
- 默认情况下,GORM 会使用
ID
作为表的主键。 - 默认情况下,整型
PrioritizedPrimaryField
启用了AutoIncrement
,要禁用它,您需要使用关闭`gorm:"auto_increment:false"关闭。
2、gorm标签的使用
https://blog.csdn.net/wide288/article/details/101038118
标签 | 说明 |
column | 指定列的名称 |
size | 指定列的大小,默认是 255(针对string类型)、11(针对int类型) |
type | 指定列的类型 |
comment | 指定列的说明信息 |
not null | 指定列的数据不为空(非空约束),默认为空值null |
default | 指定一个列的默认值 |
auto_increment | 指定一个列的数据是否自增(只能修饰int字段) |
index | 创建带或不带名称的索引,同名创建复合索引——普通索引/复合索引 |
unique_index | 创建一个唯一的索引——唯一索引 |
primary_key | 创建一个主键索引——主键索引(唯一索引+非空约束) |
- | 忽略这些字段 |
foreignkey | 指定外键约束 |
本文地址:https://blog.csdn.net/qq_42303254/article/details/108847278