【发布时间】:2013-06-07 16:44:44
【问题描述】:
免责声明:我正在处理使用 mysql 函数而不是 mysqli 函数的旧代码。我无法使用更新的功能来改造代码,并且必须在旧的、过时的功能中工作。 我知道这不是最佳做法。
我们正在尝试使用多行INSERT,但随后需要为每个插入的行提取mysql_insert_id()。这可能吗?
例子:
INSERT INTO banner (date, count) VALUES ('2013-06-06', 1), ('2013-06-07', 1), ('2013-06-08', 2);
然后如何获取每行的 insert_id?
【问题讨论】:
-
不能,只能抓取最后插入的id。你也错过了第一次约会的单引号。
-
我不认为你可以。编写一个查询,根据插入的数据获取行的 ID 字段(假设它们是唯一的)。
-
您可以插入多个语句并在每个语句之后使用
mysql_insert_id()创建一个包含所有输入ID 的数组以供以后使用。这会变慢,但我没有看到任何其他方式 -
也许您可以将值放入一个数组中,遍历该数组 - 在每次迭代时插入一行 - 然后将
mysql_insert_id()保存到一个结果数组中。 -
有一次我问了一个类似的问题(不完全重复):stackoverflow.com/questions/6895679/…