如何在多个记录插入中获取最后插入的ID?

佩曼·阿卜杜拉希(Peyman Abdollahy)

我正在尝试编写一个标签系统,我希望该系统允许用户在文本输入中插入多个标签。然后我要插入每个标签,tag_table并需要它们的ID以便保存在中tag_post_table

我知道在多个插入中last_insert_id返回第一个记录ID。我可以添加标签数量以last_insert_id获得真实的最后一个ID并使用它们之间的每个ID吗?这可靠吗?

我读了这篇文章,但我并不完全理解

http://dev.mysql.com/doc/refman/5.1/en/innodb-auto-increment-handling.html

AbcAeffchen

据我了解,这篇文章

innodb_autoinc_lock_mode设定为0(“传统”)或1(“连续”),通过任何给定语句生成的自动递增值将是连续的,没有间隙,这是因为表级AUTO-INC锁一直保持到的结束语句,一次只能执行一个这样的语句。

设置innodb_autoinc_lock_mode为0或1可确保自动增加的ID是连续的。

因此,您从中获得的IDLAST_INSERT_ID是新ID的第一个,而LAST_INSERT_ID+“受影响的行数”是新ID的后一个。

LAST_INSTERT_ID不受其他连接的影响

生成的ID会在每个连接的基础上保留在服务器中。这意味着函数返回给定客户端的值是为该客户端影响AUTO_INCREMENT列的最新语句生成的第一个AUTO_INCREMENT值。即使其他客户端生成自己的AUTO_INCREMENT值,该值也不会受到其他客户端的影响。此行为可确保每个客户端都可以检索自己的ID,而不必担心其他客户端的活动,也不需要锁或事务。

但请注意,如果使用INSERT ... ON DUPLICATE KEY UPDATE,则可能会有错误的结果INSERT IGNORE ...但是我还没有测试过。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在插入时从OrientDB获取记录ID?

来自分类Dev

如何从PhoneGap Android中的SQLite获取最后插入的行ID

来自分类Dev

如何在一个查询中插入多个记录?

来自分类Dev

从表中获取最后插入的多个ID的数据?

来自分类Dev

如何在Jquery Success方法中获取“数据库最后插入的ID”?

来自分类Dev

如何在Jquery Success方法中获取“数据库最后插入的ID”?

来自分类Dev

如何在雄辩的ORM laravel中获取最后的插入ID

来自分类Dev

如何获取linq中的最后一个插入ID

来自分类Dev

如何获取最后插入的记录

来自分类Dev

如何在Laravel中获取最后插入的ID

来自分类Dev

如何在MySQL中插入多个记录/行

来自分类Dev

如何在Laravel中获取最后插入的ID?

来自分类Dev

如何在laravel控制器中插入多个记录

来自分类Dev

如何使用C#在SQLite中获取最后插入的ID?

来自分类Dev

如何获取插入记录的ID?

来自分类Dev

如何从PhoneGap Android中的SQLite获取最后插入的行ID

来自分类Dev

如何在symfony1.4中获取最后插入的记录

来自分类Dev

如何在zf2中获取最后插入的ID?

来自分类Dev

如何在SQL Server中通过用户名获取最后插入的记录

来自分类Dev

如何获取linq中的最后一个插入ID

来自分类Dev

如何在不插入任何数据的情况下获取php中的最后一个插入ID?

来自分类Dev

如何获取Android中最后插入的记录?

来自分类Dev

获取最后插入的ID

来自分类Dev

如何在joomla Breezingforms扩展中获取最后插入的记录ID

来自分类Dev

如何在codeigniter中插入查询后获取最后的插入ID

来自分类Dev

如何获取特定ID的最后插入记录?

来自分类Dev

如何在使用同一连接完成的多个查询中获取最后插入的 ID?

来自分类Dev

如何获取表中最后插入的记录?

来自分类Dev

PHP - 如何在 CakePhp 中获取插入记录的 id

Related 相关文章

  1. 1

    如何在插入时从OrientDB获取记录ID?

  2. 2

    如何从PhoneGap Android中的SQLite获取最后插入的行ID

  3. 3

    如何在一个查询中插入多个记录?

  4. 4

    从表中获取最后插入的多个ID的数据?

  5. 5

    如何在Jquery Success方法中获取“数据库最后插入的ID”?

  6. 6

    如何在Jquery Success方法中获取“数据库最后插入的ID”?

  7. 7

    如何在雄辩的ORM laravel中获取最后的插入ID

  8. 8

    如何获取linq中的最后一个插入ID

  9. 9

    如何获取最后插入的记录

  10. 10

    如何在Laravel中获取最后插入的ID

  11. 11

    如何在MySQL中插入多个记录/行

  12. 12

    如何在Laravel中获取最后插入的ID?

  13. 13

    如何在laravel控制器中插入多个记录

  14. 14

    如何使用C#在SQLite中获取最后插入的ID?

  15. 15

    如何获取插入记录的ID?

  16. 16

    如何从PhoneGap Android中的SQLite获取最后插入的行ID

  17. 17

    如何在symfony1.4中获取最后插入的记录

  18. 18

    如何在zf2中获取最后插入的ID?

  19. 19

    如何在SQL Server中通过用户名获取最后插入的记录

  20. 20

    如何获取linq中的最后一个插入ID

  21. 21

    如何在不插入任何数据的情况下获取php中的最后一个插入ID?

  22. 22

    如何获取Android中最后插入的记录?

  23. 23

    获取最后插入的ID

  24. 24

    如何在joomla Breezingforms扩展中获取最后插入的记录ID

  25. 25

    如何在codeigniter中插入查询后获取最后的插入ID

  26. 26

    如何获取特定ID的最后插入记录?

  27. 27

    如何在使用同一连接完成的多个查询中获取最后插入的 ID?

  28. 28

    如何获取表中最后插入的记录?

  29. 29

    PHP - 如何在 CakePhp 中获取插入记录的 id

热门标签

归档