XORM 中文文档地址: https://xorm.io/zh/
注意通知 XORM 已经从 Github 迁移到 Gitea ! 所以之前包的安装地址都需要改变
XORM 安装命令
go get xorm.io/xorm
XORM 工具安装
go get xorm.io/cmd/xorm
XORM 工具帮助命令
xorm help reverse
到此xorm工具安装成功
xorm工具命令列表:
reverse 反转一个数据库结构,生成代码
shell 通用的数据库操作客户端,可对数据库结构和数据操作
dump Dump数据库中所有结构和数据到标准输出
source 从标注输入中执行SQL文件
driver 列出所有支持的数据库驱动
反转
Reverse 命令让你根据数据库的表来生成结构体或者类代码文件。安装好工具之后,可以通过
xorm help reverse
获得帮助。
例子:
首先要进入到当前项目的目录下,主要是后面的命令最后一个参数中用到的模版存放在当前项目的目录下
cd $GOPATH/src/github.com/go-xorm/cmd/xorm
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
之后将会生成代码 generated go files in ./model directory
xorm reverse mysql "root:1@tcp(localhost:3306)/demo_go_gin" ./templates/goxorm/ C:/demo-go-gin/models
模版和配置
当前,默认支持Go,C++ 和 objc 代码的生成。具体可以查看源码下的 templates 目录。在每个模版目录中,需要放置一个配置文件来控制代码的生成。如下:
lang=go
genJson=1
lang 目前支持 go, c++ 和 objc。 genJson 可以为0或者1,如果是1则结构会包含json的tag,此项配置目前仅支持Go语言。
Shell
Shell命令提供了一个操作数据库的工具。例如,可以创建表、更改表、插入数据、删除数据等。
xorm shell sqlite3 test.db
将连接到sqlite3数据库,您可以键入help列出所有shell命令。
Dump
Dump命令提供了一个工具,可以将所有数据库结构和数据作为SQL转储到标准输出。
xorm dump sqlite3 test.db
可以将sqlite3 database test.db转储到标准输出。如果要保存到文件,只需键入
xorm dump sqlite3 test.db>test.sql。
Source
xorm source sqlite3 test.db<test.sql
将在test.db上执行sql文件。
Driver
列出所有受支持的驱动程序,因为默认生成将不包括sqlite3。