php - MySQL:使用插入语句本身中插入的行的 id

标签 php sql mysql insert-id

我正在尝试类似的东西:

INSERT INTO dir_pictures SET filename=CONCAT(picture_id,'-test');

picture_id是我的主键,自增。基本上,我试图将此插入语句的 ID 放在语句本身中。

我确信它可以通过一些额外的 PHP 代码或使用多个语句来完成,但我想知道是否有一种快速简便的方法一次性完成。

附言。上面的语句总是放 '0-test'

最佳答案

先插入一条记录。然后用分号分隔语句并使用 LAST_INSERT_ID()获取新插入的自动增量 ID。一次执行。

insert into dir_pictures .... ; 
update dir_pictures set filename=CONCAT(LAST_INSERT_ID(),'-test') where id = LAST_INSERT_ID()

关于php - MySQL:使用插入语句本身中插入的行的 id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1640772/

相关文章:

sql - 查找日期列时间戳 = 00 :00:00. 000 的所有行

mysql - 使用 mySQL 从多个表返回排名

php - 将密码的 md5 散列存储在数据库中并进行比较

php - 将 RSS pubdate 转换为 mysql 数据库中的时间戳

php - 内联声明 MySQL 'unknown column'

php - LARAVEL 在 View 中获取 withErrors 的结果

mysql - SQL 将多行计数为一个查询

php - 如何在数据库中存储最近的搜索?

php mysql 在同一查询中的 WHERE 子句中使用子查询结果

php - 任何好的 Zend Framework + Minify 实现?