golang 包 "github.com/didi/gendry/builder 的使用
撸代码
dao.go
package dao
import (
"errors"
"github.com/didi/gendry/builder"
"viper_demo/dabasepool"
)
const (
handlername string = "001"
tablename = "todos"
)
// 插入数据测试
func AddDate(values map[string]interface{}) (number int64,err error) {
// 判断输入
if len(values)== 0 {
return 0,errors.New("参数错误")
}
// 全局变量获取句柄
db := dabasepool.Gethandler(handlername) // 获取db 这里可以返回异常 方便查找
var data []map[string]interface{}
data = append(data,values)
cond, vals, err := builder.BuildInsert(tablename,data)
if err != nil {
return 0, err
}
// 执行
res, err := db.Exec(cond,vals...)
if err != nil {
return 0, err
}
return res.LastInsertId()
}
main.go 调用
// builder 插入数据练习
values := map[string]interface{}{
"id":76767,
"title":"builder test",
"status":1,
}
id,err := dao.AddDate(values)
if err != nil {
fmt.Print("dao.AddDate %v",err)
} else {
fmt.Print("插入成功,插入id:",id)
}
以上练习测试 是基于 获取mysql 全部 db 的基础上。
浙公网安备 33010602011771号