麒麟v10 上部署 TiDB v5.1.2 生产环境优化实践
864
2023-07-04
go xorm生成mysql的结构体实例分析
网上很多资源都说是xorm reverse mysql "root:123456@tcp(127.0.0.1:3306)/users?charset=utf8" ./
执行后报错:2022/03/16 15:00:53 [Error] reverse.go:196 Unknown colType INT UNSIGNED
实际上原有的xorm 已经不能用了,现在要这么用:
go get xorm.io/reverse
然后进入到GOPATH下面的bin目录
vi custom.yml,用来配置连接数据库的信息:
kind: reversename: userssource: database: mysql conn_str: 'root:123456@tcp(127.0.0.1:3306)/users?parseTime=true'targets:- type: codes language: golang output_dir: ./testoutput登录后复制
执行:./reverse -f custom.yml
然后进入testoutput/ 目录下,就生成好了models.go文件:
package modelstype UserInfo struct { Id uint `xorm:"not null pk autoincr comment('主键ID') UNSIGNED INT"` Name string `xorm:"not null default '' comment('姓名') VARCHAR(50)"` Avatar string `xorm:"not null default '' comment('头像') VARCHAR(255)"` Birthday string `xorm:"not null default '' comment('出生日期') VARCHAR(50)"` Sex int `xorm:"not null default 0 comment('性别:0未知,1男,2女') TINYINT(1)"` City string `xorm:"not null default '' comment('所在城市') VARCHAR(50)"` Introduce string `xorm:"comment('自我介绍') TEXT"` Status int `xorm:"not null default 0 comment('状态:0正常,1禁用') TINYINT(1)"` CreateTime uint `xorm:"not null default 0 comment('创建时间') UNSIGNED INT"` UpdateTime uint `xorm:"not null default 0 comment('最后修改时间') UNSIGNED INT"` DeleteTime uint `xorm:"not null default 0 comment('删除时间') UNSIGNED INT"`}登录后复制
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。