SQL Server:在存储过程中检索自动递增的ID?

时间:2009-05-06 21:17:44

标签: sql sql-server database stored-procedures auto-increment

我的数据库有一个父表,其中包含一个自动递增的主键标识“ID”和一个普通的“TIMESTAMP列”。我有一个带有外键的子表,它引用了父'ID'列。

我想编写一个存储过程,将新列插入父数据库和子数据库。如何将子ID'列设置为等于新的自动递增父ID'列?这需要单独的:

SELECT TOP 1 * FROM PARENT_TABLE

还是有另一种方式吗?

2 个答案:

答案 0 :(得分:8)

您可以从SCOPE_IDENITY()中检索它。例如:

declare @myid int
INSERT INTO table (field) VALUES ('value')
SELECT @myid = SCOPE_IDENTITY()

答案 1 :(得分:0)

选择scope_identity();