Golang GORM使用
gorm
是go语言中实现数据库访问的ORM(对象关系映射)库
。使用这个库,我们可以利用面向对象的方法,更加方便的对数据库中的数据进行CRUD(增删改查)
。
基本使用
下载依赖
go get github.com/jinzhu/gorm
go get github.com/go-sql-driver/mysql
第一个是核心库。
第二个是mysql驱动包。
连接数据库
packae main
import (
"github.com/jinzhu/gorm"
_ "github.com/jinzhu/gorm/dialects/mysql"
"fmt"
)
func main() {
db, err := gorm.Open("mysql",
"root:root@/test?charset=utf8&parseTime=True&loc=Local")
if err != nil {
fmt.Println(err)
return
}else {
fmt.Println("connection succedssed")
}
defer db.Close()
新增数据
type User struct {
ID int `gorm:"primary_key"`
Name string `gorm:"not_null"`
}
func add() {
user := &User{Name:"zhangsan"}
db.Create(user)
}
删除数据
user := &User{ID:1}
db.delete(user)
更新数据
user := &User{ID:1}
db.Model(user).update("Name","lisi")
查询数据
// query all
var users []User
db.Find(&users)
fmt.Println(users)
// query one
user := new (User)
db.First(user,1)
fmt.Println(user)
其它
判断数据库中是否有结构体对应的表:
db.HasTable(User{})
创建表
db.CreateTable(User{})
以上就是gorm基本的用法。