Sql Can';t插入的行数不能超过150行
我正在使用GoSQL驱动程序/mysql从OMDB数据转储插入大量电影。我正在解析数据并使用以下代码插入它:Sql Can';t插入的行数不能超过150行,sql,go,Sql,Go,我正在使用GoSQL驱动程序/mysql从OMDB数据转储插入大量电影。我正在解析数据并使用以下代码插入它: _, err = database.Query("INSERT INTO `movies` (`name`, `year`, `release_date`, `full_plot`, `genre`, `imdb_id`) VALUES (?, ?, ?, ?, ?, ?)", movie.Name, movie.Year, movie.ReleaseDate, movie.FullPl
_, err = database.Query("INSERT INTO `movies` (`name`, `year`, `release_date`, `full_plot`, `genre`, `imdb_id`) VALUES (?, ?, ?, ?, ?, ?)", movie.Name, movie.Year, movie.ReleaseDate, movie.FullPlot, movie.Genre, movie.IMDBID)
if err != nil {
return false, nil
}
return true, nil
它可以工作,但只适用于150行。我做错了什么吗?您的代码似乎放弃了返回的错误值,这是您不应该做的;优雅地处理它。查看错误是什么,如果您打开的数据库连接太多,则应使用数据库连接池并设置
(*DB)SetMaxOpenConns
值
(*DB)Query
通常用于返回行的选择语句,使用(*DB)Exec
或(*Stmt)Exec
进行插入
我建议使用db连接池和(*sql.db)Prepare
来准备语句,并使用准备好的语句运行插入(甚至并发)
请参见返回false,nil
为什么不返回错误?可能会提供一些有用的信息。抛出错误是一个疏忽,谢谢,我将研究prepare函数。连接太多,exec已经修复了它。非常感谢。