执行查询语句后从SQL获取Row数据

时间:2012-05-09 21:34:44

标签: mysql sql

我有一个MYSQL语句,可以将数据插入一行。行id将自动递增。

但是如何找回插入并执行的那一行数据呢?那行数据应该包含行id,我不知道那是什么..

我想要整行$ row,而不仅仅是id。我不知道id,因为它是自动增量的。

2 个答案:

答案 0 :(得分:2)

由于您有自动增量ID,因此可以使用LAST_INSERT_ID()

电子。

INSERT INTO supportContacts
(type, details)
VALUES
('Twitter', '@sqlfiddle');

SELECT * FROM 
supportContacts 
WHERE id = LAST_INSERT_ID();

DEMO

答案 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的行。