我必须使用存储在另一个表中的计数器更新一个SQL表中的列,并更新该表

时间:2010-03-17 04:29:22

标签: sql counter increment

我正在使用SQL Server 2005(用于测试)& 2007年(生产)。

我必须使用另一个表中的“last record ID”列,在现有列中为我表中的所有记录添加唯一记录ID。所以,我要做一些UPDATE我的表,但我必须从另一个表中获取“最后一个记录ID”,增加它,更新THAT表然后更新我的记录。

有谁能举例说明如何做到这一点?其他用户也可能正在递增计数器。

1 个答案:

答案 0 :(得分:3)

如果您要插入一个表然后更新(下一个)表,您可以使用@@ IDENTITY从第一个表中为您提供自动增量ID。

E.g。

INSERT INTO table1 (description) VALUES ('blah');
UPDATE table2 SET (tabel1ID = @@IDENTITY) WHERE condition

@@ IDENTITY将为您提供最后插入行的ID。