orm是beego已经封装好的model层对于数据库的操作接口,支持以下三种数据库驱动:
- MySQL:github.com/go-sql-driver/mysql
- PostgreSQL:github.com/lib/pq
- Sqlite3:github.com/mattn/go-sqlite3
需要注册,连接等操作:
需要的库有:
import (
"github.com/astaxie/beego/orm"
_ "github.com/go-sql-driver/mysql"
)
首先,定义数据类型,跟数据库的表对应起来:
type room_info struct {
Room_number string `orm:"pk"`
Room_pos string
Room_floor int
Room_addi string
}
注意首字母要大写,golang中对外的数据访问貌似大写默认public,小写是非public
然后,注册驱动、数据库和Model:
func init() {
orm.RegisterDriver("mysql", orm.DRMySQL)
orm.RegisterDataBase("default", "mysql", "root:@tcp(127.0.0.1:3306)/lock_info?charset=utf8")
orm.RegisterModel(new(room_info))
}
main函数如下:
func main() {
o := orm.NewOrm()
o.Using("lock_info")
var r room_info
r.Room_number = "241"
_ = o.Read(&r)
fmt.Println(r)
}
打印如下信息:
访问数据库成功
更多的操作看官方文档即可,不得不说golang还是没有很好的开发生态,很多问题都要靠自己摸索解决,慢慢来吧。