我有以下表格结构。
我想在插入新记录时为 item_image_name
插入与 item_id
的值相同的值(这是 AUTO_INCREMENT)。
编辑 我在插入时想要这个
INSERT INTO items(user_id, item_image_name) VALUES ('','LAST_INCREMENT_VALUE + 1')
最佳答案
您可以通过在表上定义一个 before insert
触发器来实现这一点。
在主体中,首先您可以找到要分配给主键字段的下一个自动增量值,并将相同的值用于 image_name
字段。
示例:
delimiter //
drop trigger if exists bi_on_items //
create trigger bi_on_items before insert on items
for each row
begin
if NEW.item_image_name is null OR length( trim( NEW.item_image_name ) ) = 0 then
set NEW.item_image_name := ( SELECT AUTO_INCREMENT
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME = 'items'
AND TABLE_SCHEMA = DATABASE() );
end if;
end;
//
delimiter ;
关于php - 如何获取当前插入的 AUTO_INCREMENT id?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23903677/