golang xorm reverse 自动生成数据库实体文件
Posted nickchou
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了golang xorm reverse 自动生成数据库实体文件相关的知识,希望对你有一定的参考价值。
一、先安装好需要的东西
xorm
go get github.com/go-xorm/cmd/xorm
安装驱动版本,选择自己需要用的
go get github.com/go-sql-driver/mysql //Mysql
go get github.com/ziutek/mymysql/godrv //MyMysql
go get github.com/lib/pq //Postgres
go get github.com/mattn/go-sqlite3 //SQLite
go get github.com/denisenkom/go-mssqldb //MSSQL
二、配置%GOPATH%/Bin的环境变量
三、测试xorm cmd是否安装成功
xorm help reverse
xorm reverse命令参数如下所示
D:MyConfigurationxxx>xorm help reverse
usage: xorm reverse [-s] driverName datasourceName tmplPath [generatedPath] [tableFilterReg]
according database's tables and columns to generate codes for Go, C++ and etc.
-s Generated one go file for every table
driverName Database driver name, now supported four: mysql mymysql sqlite3 postgres
datasourceName Database connection uri, for detail infomation please visit driver's project page
tmplPath Template dir for generated. the default templates dir hasprovide 1 template
generatedPath This parameter is optional, if blank, the default value is models, then will
generated all codes in models dir
tableFilterReg Table name filter regexp
注意的是下面指令中的templates/goxorm 指的是%GOPATH%/Srcgithub.comgo-xormcmdxorm emplatesgoxorm
如果是cd切换到了%GOPATH%/Srcgithub.comgo-xormcmdxorm的目录,就可以使用下面的指令,否则tmplPath请填写完整路径。
参考案例:MSSQL
sqlite: xorm reverse sqite3 test.db templates/goxorm
mysql: xorm reverse mysql root:@/xorm_test?charset=utf8 templates/goxorm
mymysql: xorm reverse mymysql xorm_test2/root/ templates/goxorm
postgres: xorm reverse postgres "dbname=xorm_test sslmode=disable" templates/goxorm
mssql: xorm reverse mssql "server=127.0.0.1;user id=testid;password=testpwd;database=testdb" templates/goxorm
案例:MSSQL
方式一:建议指定generatedPath(如下例C: emp) ,这样好找生成后的代码。
xorm reverse mssql "server=127.0.0.1;user id=sa;password=123456;database=shifenzheng" %GOPATH%Srcgithub.comgo-xormcmdxorm emplatesgoxorm C: emp
方式二:cd先切换到xorm/cmd/xorm文件夹下再执行
cd %GOPATH%/Srcgithub.comgo-xormcmdxorm
xorm reverse mssql "server=127.0.0.1;user id=sa;password=123456;database=shifenzheng" templatesgoxorm C: emp
如图:
生成后的代码:
以上是关于golang xorm reverse 自动生成数据库实体文件的主要内容,如果未能解决你的问题,请参考以下文章
Golang 项目中 ORM 选择,gorm xorm 对比