什么是gorm?
gorm框架就是go的一个数据库连接及交互框架,一般用于连接关系型数据库。
如何安装?
go get -u gorm.io/gorm
go get -u gorm.io/driver/sqlite
添加
gorm:
user := User{Name: "Jinzhu", Age: 18, Birthday: time.Now()}
result := db.Create(&user) // 通过数据的指针来创建
更新
gorm:
db.Model(&User{}).Where("active = ?", true).Update("name", "hello")
// UPDATE users SET name='hello', updated_at='2013-11-17 21:34:10' WHERE active=true;
删除
gorm:
// 带额外条件的删除
db.Where("name = ?", "jinzhu").Delete(&email)
// DELETE from emails where id = 10 AND name = "jinzhu";
原生:
str := fmt.Sprintf("delete from objs_attent where Id= 1")
err := global.DB.Exec(str).Error
查询
gorm:
type Language struct {
Code string
Name string
}
db.First(&Language{})
原生:
str := fmt.Sprintf("with a1 as (SELECT dept_id as id from sys_user where ) select st_astext(geostr) as latlng from a1 left join sys_dept on a1.id=sys_dept.dept_id ")
err := global.DB.Raw(str).Find(&result).Error