如何在 MySQL 中进行批量插入

新手上路,请多包涵

我有 1-many number 需要输入到表中的记录。在查询中执行此操作的最佳方法是什么?我应该只做一个循环并在每次迭代中插入一条记录吗?或者,还有更好的方法?

原文由 Genadinik 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 324
2 个回答

来自 MySQL 手册

使用 VALUES 语法的 INSERT 语句可以插入多行。为此,请包含多个列值列表,每个列表都包含在括号中并用逗号分隔。例子:

 INSERT INTO tbl_name (a,b,c) VALUES(1,2,3),(4,5,6),(7,8,9);

原文由 nietaki 发布,翻译遵循 CC BY-SA 3.0 许可协议

加载数据infile查询是更好的选择,但是像godaddy这样的服务器在共享主机上限制了这个选项,所以只剩下两个选项,然后一个是在每次迭代或批量插入时插入记录,但是如果你的查询超过这个批量插入有它的字符限制在 mysql 中设置的字符数然后您的查询将崩溃,所以我建议使用批量插入块插入数据,这将最大限度地减少与数据库建立的连接数。祝大家好运

原文由 Syed Adeel Ali Rizvi 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题