gdao - golang 的 orm 库


Apache
跨平台
Google Go

软件简介

gdao 是一个 golang 的 orm 库,
gdao可以将数据库表映射生成相应的***.go文件(表名.go),
之后操作数据库单表就直接操作相应的go文件即可。同时支持原生sql语句。

注册数据源:3种方式,优先级从低到高
1、gdao.SetDB(db)
2、gdao.SetDBSrouceByTableName(“hstest”,db)
3、hstest.DB=db

生成hstest表的hstest.go文件
gdao.CreateDaoFile(“hstest”, “dao”, “d:/gdao/src/example/dao”)

查询操作:select id,age,createtime,name from hstest where id between 1 and 10 and
age in(30, 31)
hstest := dao.NewHstest()
hstest.Where(hstest.Id.Between(1, 10), hstest.Age.IN(30, 31))
hstests, := hstest.Query(hstest.Id, hstest.Age, hstest.Createtime,
hstest.Name)
for
, u := range hstests {
fmt.Println(“>>>>”, u.GetId(), u.GetAge(), u.GetCreatetime(), u.GetName())
}

更新操作:update hstest set name=”wu”,age=34 where id=2
hstest := dao.NewHstest()
hstest.SetName(“wu”)
hstest.SetAge(34)
hstest.Where(hstest.Id.EQ(2))
hstest.Update()

插入操作: insert into hstest(id,name,age)values(1,”wu”,30,time.Now())
hstest := dao.NewHstest()
hstest.SetId(1)
hstest.SetName(“wu”)
hstest.SetAge(30)
hstest.SetCreatetime(time.Now())
hstest.Insert()

删除操作:delete from hstest where id=1
hstest := dao.NewHstest()
hstest.Where(hstest.Id.EQ(1))
hstest.Delete()