深度学习,ORM 推荐的对应数据库类型,在此列出,自动建表功能也会以此为标准。默认所有的字段都是 NOT NULL
MySQL
go
|
mysql
|
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
|
bool
|
bool
|
string - 默认为 size 255
|
varchar(size)
|
string - 设置 type(text)
|
longtext
|
time.Time-设置 type为date
|
date
|
time.Time
|
datetime
|
byte
|
tinyint unsigned
|
rune
|
integer
|
int
|
integer
|
int8
|
tinyint
|
int16
|
smallint
|
int32
|
integer
|
int64
|
bigint
|
uint
|
integer unsigned
|
uint8
|
tinyint unsigned
|
uint16
|
smallint unsigned
|
uint32
|
integer unsigned
|
uint64
|
bigint unsigned
|
float32
|
double precision
|
float64
|
double precision
|
float64 设置digits,decimals
|
numeric(digits, decimals)
|
Sqlite3
go
|
sqlite3
|
int, int32, int64, uint, uint32, uint64 - 设置 auto 或者名称为 Id
|
integer AUTOINCREMENT
|
bool
|
bool
|
string - 默认为 size 255
|
varchar(size)
|
string - 设置 type(text)
|
text
|
time.Time - 设置 type 为 date
|
date
|
time.Time
|
datetime
|
byte
|
tinyint unsigned
|
rune
|
integer
|
int
|
integer
|
int8
|
tinyint
|
int16
|
smallint
|
int32
|
integer
|
int64
|
bigint
|
uint
|
integer unsigned
|
uint8
|
tinyint unsigned
|
uint16
|
smallint unsigned
|
uint32
|
integer unsigned
|
uint64
|
bigint unsigned
|
float32
|
real
|
float64
|
real
|
float64 设置digits,decimals
|
decimal
|
PostgreSQL
go
|
postgres
|
int, int32, int64, uint, uint32, uint64 - 设置 auto 或者名称为 Id
|
serial
|
bool
|
bool
|
string - 默认为 size 255
|
varchar(size)
|
string - 设置 type(text)
|
text
|
time.Time - 设置 type 为 date
|
date
|
time.Time
|
timestamp with time zone
|
byte
|
smallint CHECK(“column” >= 0 AND “column” <= 255)
|
rune
|
integer
|
int
|
integer
|
int8
|
smallint CHECK(“column” >= -127 AND “column” <= 128)
|
int16
|
smallint
|
int32
|
integer
|
int64
|
bigint
|
uint
|
bigint CHECK(“column” >= 0)
|
uint8
|
smallint CHECK(“column” >= 0 AND “column” <= 255)
|
uint16
|
integer CHECK(“column” >= 0)
|
uint32
|
bigint CHECK(“column” >= 0)
|
uint64
|
bigint CHECK(“column” >= 0)
|
float32
|
double precision
|
float64
|
double precision
|
float64 - 设置 digits, decimals
|
numeric(digits, decimals)
|
关系型字段
其字段类型取决于对应的主键。
RelForeignKey
RelOneToOne
RelManyToMany
RelReverseOne
RelReverseMany