我是靠谱客的博主 伶俐金毛,最近开发中收集的这篇文章主要介绍xorm根据数据库生成go model文件,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

你懂的,手工翻译表定义到go结构体是很枯燥的。
so,用xorm搞定。

go get github.com/go-xorm/cmd/xorm

安装以下依赖,用到哪个装哪个。

github.com/go-xorm/xorm

驱动

  1. Mysql: github.com/go-sql-driver/mysql
  2. MyMysql: github.com/ziutek/mymysql/godrv
  3. Postgres: github.com/lib/pq
  4. SQLite: github.com/mattn/go-sqlite3
  5. MSSQL: github.com/denisenkom/go-mssqldb
    逆向生成
    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: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=test;user id=testid;password=testpwd;database=testdb" templates/goxorm

会在./model目录下生成go的文件

  1. 一定要在$GOPATH/src/github.com/go-xorm/cmd/xorm目录下运行,因为在这个目录下有templets,在解析数据库结构的时候有用。如果在别的目录下运行,会导致命令不报错,但是无法正常生成对应的结构文件。有空可以给github.com/go-xorm/cmd/xorm提个bug,加上错误提示。
  2. 执行xorm reverse mysql root:root@tcp(127.0.0.1:3306)/testdb?charset=utf8 templates/goxorm

最后

以上就是伶俐金毛为你收集整理的xorm根据数据库生成go model文件的全部内容,希望文章能够帮你解决xorm根据数据库生成go model文件所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(87)

评论列表共有 0 条评论

立即
投稿
返回
顶部