我有一个MYSQL语句,可以将数据插入一行。行id将自动递增。
但是如何找回插入并执行的那一行数据呢?那行数据应该包含行id,我不知道那是什么..
我想要整行$ row,而不仅仅是id。我不知道id,因为它是自动增量的。
答案 0 :(得分:2)
由于您有自动增量ID,因此可以使用LAST_INSERT_ID()
电子。
INSERT INTO supportContacts
(type, details)
VALUES
('Twitter', '@sqlfiddle');
SELECT * FROM
supportContacts
WHERE id = LAST_INSERT_ID();
答案 1 :(得分:0)
如果您有一个id的自动递增列,则以下内容适用于任何数据库:
select *
from table
where id = (select max(id) from table)
假设没有其他人插入行。
在SQL Server中,您可以执行以下操作:
declare @id int;
insert . . .
select @id = @@Identity;
select *
from table
where id = @id;
请注意,插入后需要立即跟随@@ Identity的行。