如何在 MySQL 中获取多个插入行的 ID?

2021-11-20 00:00:00 sql normalization database insert mysql

我正在使用以下命令将一些单词插入到一个两列的表格中:

I am inserting some words into a two-column table with this command:

INSERT IGNORE INTO terms (term) VALUES ('word1'), ('word2'), ('word3');

  1. 如何获取插入每个单词的行的 ID(主键).我的意思是在执行 INSERT 后返回一个像55,56,57"这样的值.MySQL有这样的反应吗?

  1. How can I get the ID (Primary Key) of the row in which each word is inserted. I mean returning a value like "55,56,57" after executing INSERT. Does MySQL have such a response?

术语列是UNIQUE.如果一个术语已经存在,MySQL 不会插入它.是否可以返回此重复项的引用(即该术语所在行的 ID)?像55,12,56"这样的回复.

The term column is UNIQUE. If a term already exists, MySQL will not insert it. Is it possible to return the reference for this duplication (i.e. the ID of the row in which the term exists)? A response like "55,12,56".

推荐答案

  1. 您可以通过 SELECT LAST_INSERT_ID 获得它(); 或通过让您的框架/MySQL 库(任何语言)调用 mysql_insert_id().

那行不通.在那里你必须在插入后查询 ID.

That won't work. There you have to query the IDs after inserting.

相关文章