开发者社区 问答 正文

如何在MySQL表中插入许多行并返回新的ID??mysql

通常,我可以在MySQL表中插入一行并last_insert_id取回。但是,现在,我想将许多行批量插入表中并获取ID数组。有人知道我该怎么做吗?

有一些类似的问题,但并不完全相同。我不想将新ID插入任何临时表;我只想找回ID数组。

展开
收起
保持可爱mmm 2020-05-17 13:33:35 466 分享 版权
1 条回答
写回答
取消 提交回答
  • 旧线程,但只是研究了一下,所以去了:如果您在最新版本的MySQL上使用InnoDB,则可以使用LAST_INSERT_ID()和获得ID列表ROW_COUNT()。

    如果innodb_autoinc_lock_mode设置为0(传统)或1(连续),InnoDB保证批量插入时自动递增的序号。因此,您可以通过添加获取第一个 ID LAST_INSERT_ID()和最后一个 ID ROW_COUNT()-1。来源:stack overflow

    2020-05-17 13:43:55
    赞同 展开评论