• 命令模式
    • 自动建表
    • 打印建表SQL

    命令模式

    注册模型与数据库以后,调用 RunCommand 执行 orm 命令。

    1. func main() {
    2. // orm.RegisterModel...
    3. // orm.RegisterDataBase...
    4. ...
    5. orm.RunCommand()
    6. }
    1. go build main.go
    2. ./main orm
    3. # 直接执行可以显示帮助
    4. # 如果你的程序可以支持的话,直接运行 go run main.go orm 也是一样的效果

    自动建表

    1. ./main orm syncdb -h
    2. Usage of orm command: syncdb:
    3. -db="default": DataBase alias name
    4. -force=false: drop tables before create
    5. -v=false: verbose info

    使用 -force=1 可以 drop table 后再建表

    使用 -v 可以查看执行的 sql 语句


    在程序中直接调用自动建表:

    1. // 数据库别名
    2. name := "default"
    3. // drop table 后再建表
    4. force := true
    5. // 打印执行过程
    6. verbose := true
    7. // 遇到错误立即返回
    8. err := orm.RunSyncdb(name, force, verbose)
    9. if err != nil {
    10. fmt.Println(err)
    11. }

    自动建表功能在非 force 模式下,是会自动创建新增加的字段的。也会创建新增加的索引。

    对于改动过的旧字段,旧索引,需要用户自行进行处理。

    打印建表SQL

    1. ./main orm sqlall -h
    2. Usage of orm command: syncdb:
    3. -db="default": DataBase alias name

    默认使用别名为 default 的数据库。