GO--sqlboiler 初学

官方文档 : https://github.com/volatiletech/sqlboiler/

1、安装 sqlboiler (最新版本,v1/v2/v3版本都不再维护)

Go 1.16 以上版本:
go install github.com/volatiletech/sqlboiler/v4@latest
go install github.com/volatiletech/sqlboiler/v4/drivers/sqlboiler-psql@latest
Go 1.15 以下版本:

安装sqlbolier v4版本和postgresql(也可以安装其他驱动比如mysql, mssql, sqlite3)
注意:不要再另一个go模块中运行(比如你的代码项目里),它会用一堆你不想要的东西污染你的 go.mod, 并且你的二进制文件不会被安装。

GO111MODULE=on go get -u -t github.com/volatiletech/sqlboiler/v4
GO111MODULE=on go get github.com/volatiletech/sqlboiler/v4/drivers/sqlboiler-psql
支持的数据库驱动链接
PostgreSQLhttps://github.com/volatiletech/sqlboiler/v4/drivers/sqlboiler-psql
MySQLhttps://github.com/volatiletech/sqlboiler/v4/drivers/sqlboiler-mysql
MSSQLServer2012+https://github.com/volatiletech/sqlboiler/v4/drivers/sqlboiler-mssql
SQLite3https://github.com/volatiletech/sqlboiler/v4/drivers/sqlboiler-sqlite3
CockroachDBhttps://github.com/glerchundi/sqlboiler-crdb
v3版本安装教程(需要go1.15以下)

2、在当前工程根目录新建 sqlboiler.toml 文件(一定要这个命名不然无法解析) 配置内容如下

[mysql]
  dbname  = "dbname"
  host    = "127.0.0.1"
  port    = 3306
  user    = "root"
  pass    = "密码"
  sslmode = "false"
  output = "models" //生成在哪个目录
  pkgname = "models" //包名,与目录名相同步
  whitelist = ["student","teacher"]  //需要生成哪张表的model,这里是表名

3、在当前工程目录执行 sqlboiler mysql 命令 ,即可在 models 目录生成指定的model

4、–no-tests 不生成test后缀的文件

sqlboiler -o "models/dbname" -p 数据库名 --no-tests mysql  

5、–pkgname指定文件夹名(默认是models)

sqlboiler -o "new_pkgname/dbname" -p 数据库名  --pkgname  指定文件夹名

6、sqlboiler.toml 文件起别名(写在第2步mysql配置的下面,重新执行生成命令生效)

[[aliases.tables]]
            name          = "student"
            up_plural     = "sds"
            up_singular   = "sd"
            down_plural   = "Sds"
            down_singular = "Sd"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值