我有一个脚本需要向数据库中插入大量数据(270k 行),并且我正在使用准备好的语句(带有 for 循环)。当我执行 ( res, err := stmt.Exec) 时,我可以检索插入到数据库 ( id, err = res.LastInsertId()) 中的最后一个 ID 。但是由于我向数据库发出了很多请求,在我得到 16k 行之后max_prepared_statements(16,382) error(然后我尝试将最大值设置为 100 万而不是 16,382,但问题仍然存在)。
我的问题是,是否有另一种方法可以在不使用准备好的语句的情况下插入数据库并检索最后插入的 ID?
我现在的插入代码是:
stmt, err := db.Prepare(`INSERT info SET title=?,minimage=?,downloadfile=?,rating=?,peoplewatched=?,likes=?`)
checkErr(err)
res, err := stmt.Exec(title,minimage,downloadfile,rating,peoplewatched,likes)
checkErr(err)
id, err = res.LastInsertId()
checkErr(err)
fmt.Println(id)
谢谢
慕码人8056858
相关分类