beego orm 操作(mysql)

beego orm 操作(mysql)

继续对beego的orm操作的学习。
首先我们对之前的代码做一下改动,以下是main.go,其实逻辑不需要做任何更改,我只需要对注册数据库的地方做个小修改

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
package main
import (
"github.com/astaxie/beego"
"github.com/astaxie/beego/orm"
_ "github.com/go-sql-driver/mysql"
_ "github.com/mattn/go-sqlite3"
_ "quickstart/routers"
)
var dbuser string = "root" //数据库用户名
var dbpassword string = "123456" //数据库密码
var db string = "ormtest" //数据库名字
//自动建表
func createTable() {
name := "default" //数据库别名
force := false //不强制建数据库
verbose := true //打印建表过程
err := orm.RunSyncdb(name, force, verbose) //建表
if err != nil {
beego.Error(err)
}
}
func init() {
// 注册sqlite3 Driver
// orm.RegisterDataBase("default", "sqlite3", "data.db")
//
//
// 注册mysql Driver
orm.RegisterDriver("mysql", orm.DRMySQL)
// 构造conn连接 用户名:密码@数据库地址+名称?字符集
conn := dbuser + ":" + dbpassword + "@/" + db + "?charset=utf8"
beego.Info(conn)
//注册数据库连接
orm.RegisterDataBase("default", "mysql", conn)
createTable()
}
func main() {
// orm.RegisterDriver("mysql", orm.DRMySQL)
// orm.RegisterDataBase("default", "mysql", "root:root@/orm_test?charset=utf8")
//
beego.Run()
}

从上面我们可以看到只需要对Driver进行替换即可~!换成对应的数据库驱动即可。
下面看下最终的几个主要执行效果:

创建db

插入数据

更新数据

url跟上次的是一样的~~!
最新完整的工程地址:
https://github.com/bartontang/beego_orm_test