技术文档

gorm批量插入数据

2019-02-28  本文已影响0人  __默默无闻

最近用 gin+mysql编写web工程,其中使用了gorm库对数据库进行操作。由于gorm目前暂未提供 批量插入方法,推荐使用原sql语句批量插入数据。

参考链接

批量插入mysql数据

// 声明project_pics数据表结构
type ProjectPic struct {
    Id        int    `json:"id"`
    ProjectId int    `json:"project_id"`
    Url       string `json:"url"`
    Type      string `json:"type"`
}
func AddProjectPics(data []string, project_pic_type string, project_id int) bool {
    sql := "INSERT INTO `project_pics` (`project_id`,`url`,`type`) VALUES "
// 循环data数组,组合sql语句
    for key, value := range data {
        if len(data)-1 == key {
//最后一条数据 以分号结尾
            sql += fmt.Sprintf("(%d,'%s','%s');", project_id, value, project_pic_type)
        } else {
            sql += fmt.Sprintf("(%d,'%s','%s'),", project_id, value, project_pic_type)
        }
    }
    db.Exec(sql)
    return true
}

效果

image.png
上一篇下一篇

猜你喜欢

热点阅读