[go][beego][mysql] beego orm 模型字段与数据库类型的对应

在此列出 ORM 推荐的对应数据库类型,自动建表功能也会以此为标准。

默认所有的字段都是 NOT NULL

MySQL
gomysql
int, int32 - 设置 auto 或者名称为 Id 时integer AUTO_INCREMENT
int64 - 设置 auto 或者名称为 Id 时bigint AUTO_INCREMENT
uint, uint32 - 设置 auto 或者名称为 Id 时integer unsigned AUTO_INCREMENT
uint64 - 设置 auto 或者名称为 Id 时bigint unsigned AUTO_INCREMENT
boolbool
string - 默认为 size 255varchar(size)
string - 设置 type(text) 时longtext
time.Time - 设置 type 为 date 时date
time.Timedatetime
bytetinyint unsigned
runeinteger
intinteger
int8tinyint
int16smallint
int32integer
int64bigint
uintinteger unsigned
uint8tinyint unsigned
uint16smallint unsigned
uint32integer unsigned
uint64bigint unsigned
float32double precision
float64double precision
float64 - 设置 digits, decimals 时numeric(digits, decimals)
Sqlite3
gosqlite3
int, int32, int64, uint, uint32, uint64 - 设置 auto 或者名称为 Id 时integer AUTOINCREMENT
boolbool
string - 默认为 size 255varchar(size)
string - 设置 type(text) 时text
time.Time - 设置 type 为 date 时date
time.Timedatetime
bytetinyint unsigned
runeinteger
intinteger
int8tinyint
int16smallint
int32integer
int64bigint
uintinteger unsigned
uint8tinyint unsigned
uint16smallint unsigned
uint32integer unsigned
uint64bigint unsigned
float32real
float64real
float64 - 设置 digits, decimals 时decimal
PostgreSQL
gopostgres
int, int32, int64, uint, uint32, uint64 - 设置 auto 或者名称为 Id 时serial
boolbool
string - 默认为 size 255varchar(size)
string - 设置 type(text) 时text
time.Time - 设置 type 为 date 时date
time.Timetimestamp with time zone
bytesmallint CHECK(“column” >= 0 AND “column” <= 255)
runeinteger
intinteger
int8smallint CHECK(“column” >= -127 AND “column” <= 128)
int16smallint
int32integer
int64bigint
uintbigint CHECK(“column” >= 0)
uint8smallint CHECK(“column” >= 0 AND “column” <= 255)
uint16integer CHECK(“column” >= 0)
uint32bigint CHECK(“column” >= 0)
uint64bigint CHECK(“column” >= 0)
float32double precision
float64double precision
float64 - 设置 digits, decimals 时numeric(digits, decimals)

关系型字段

其字段类型取决于对应的主键。

  • RelForeignKey
  • RelOneToOne
  • RelManyToMany
  • RelReverseOne
  • RelReverseMany


参考文章:https://my.oschina.net/u/252343/blog/829912

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值