mysql - 同一请求中的 LAST_INSERT_ID()

标签 mysql

是否可以添加新条目、复制其 ID(自动递增)并将其添加到条目的列中。我正在寻找的示例:

INSERT INTO `my_stuff` (title`, `description`, `this_entry_ID`) VALUES ('$my_stuff', '$description', LAST_INSERT_ID())");

现在,我使用两个请求来完成:

  1. 添加一个新条目并复制新条目的 ID(使用 LAST_INSERT_ID())
  2. LAST_INSERT_ID() 数据更新条目。

是否可以一次完成所有操作?

注意:LAST_INSERT_ID()仅供引用,描述我所需要的。

最佳答案

您不能执行在插入中使用目标表的子查询。

insert into TheTable (Name, LastID) values ("New 1", (select Id from TheTable order by Id DESC limit 1) );

但是按照您的建议执行操作不会出错。

insert into TheTable (Name, LastID) values ("New 1", LAST_INSERT_ID() );

关于mysql - 同一请求中的 LAST_INSERT_ID(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21105729/

相关文章:

mysql - 将经纬度文本列移动到 'point' 类型的列中

c# - 如何复制表条目及其依赖表行mysql

mysql - SQL 计算间隔之间的时间差,包括来自单独表的时间

php - 在 PHP 中,如果第一次尝试成功,如何防止第二次发送短信?

mysql - 全局开启mysql profiler

mysql - MySQL 中的 CHECK 约束不起作用

mysql - 在 SQL 查询中分组

mysql - 我不能在 sql delete 中使用别名

javascript - 访问 5 个过滤器中的多个选定值 - SumoSelect - Ajax - JavaScript - JQuery

PHP MYSQLI 获取错误