在单个查询中执行多个 MySQL INSERT 语句
原始问题:
是吗可以在单个 MySQL 查询中执行多个 INSERT 语句吗?
答案细分:
虽然技术上可以使用分号将多个 INSERT 语句连接到单个查询中(;) 作为语句分隔符,并不是最佳做法。
推荐做法:
为了效率和可维护性,一般建议使用单独的 INSERT 语句对于每个数据集,即使插入到同一个表中也是如此。这样可以更好地处理错误并减少数据不一致的可能性。
单独的 INSERT 语句示例:
<code class="php">$string1 = "INSERT INTO table1 (column1, column2) VALUES (1, 'John');"; $string2 = "INSERT INTO table1 (column1, column2) VALUES (2, 'Mary');"; mysql_query($string1) or die(mysql_error()); mysql_query($string2) or die(mysql_error());</code>
使用单个 INSERT 的替代方法具有多个值的语句:
在某些情况下,使用带有逗号分隔值列表的单个 INSERT 语句插入多个值可能会更有效。
具有多个值的 INSERT 语句示例:
<code class="php">$string3 = "INSERT INTO table1 (column1, column2) VALUES (1, 'John'), (2, 'Mary');"; mysql_query($string3) or die(mysql_error());</code>
请注意,仅当所有值都插入到具有相同列的同一个表中时,此方法才适用。
以上是单独执行多个“INSERT”语句更好还是在单个查询中执行更好?的详细内容。更多信息请关注PHP中文网其他相关文章!