ORM 能够简单的进行事务操做。sql
o := NewOrm() err := o.Begin() // 事务处理过程 ... ... // 此过程当中的全部使用 o Ormer 对象的查询都在事务处理范围内 if SomeError { err = o.Rollback() } else { err = o.Commit() }
注册模型与数据库之后,调用 RunCommand 执行 orm 命令。数据库
func main() { // orm.RegisterModel... // orm.RegisterDataBase... ... orm.RunCommand() }
go build main.go ./main orm # 直接执行能够显示帮助 # 若是你的程序能够支持的话,直接运行 go run main.go orm 也是同样的效果
自动建表ui
./main orm syncdb -h Usage of orm command: syncdb: -db="default": DataBase alias name -force=false: drop tables before create -v=false: verbose info
使用 -force=1
能够 drop table 后再建表code
使用 -v
能够查看执行的 sql 语句orm
在程序中直接调用自动建表:对象
// 数据库别名 name := "default" // drop table 后再建表 force := true // 打印执行过程 verbose := true // 遇到错误当即返回 err := orm.RunSyncdb(name, force, verbose) if err != nil { fmt.Println(err) }
自动建表功能在非 force 模式下,是会自动建立新增长的字段的。也会建立新增长的索引。blog
对于改动过的旧字段,旧索引,须要用户自行进行处理。索引
打印建表SQL事务
./main orm sqlall -h Usage of orm command: syncdb: -db="default": DataBase alias name
默认使用别名为 default 的数据库it