【问题标题】:SQL Server: Retrieve auto-incremented ID inside a stored procedure?SQL Server:在存储过程中检索自动递增的 ID?
【发布时间】:2009-05-06 21:17:44
【问题描述】:

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

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

SELECT TOP 1 * FROM PARENT_TABLE

或者还有其他方法吗?

【问题讨论】:

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


【解决方案1】:

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

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

【讨论】:

    【解决方案2】:

    选择 scope_identity();

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-05-27
      • 2011-01-31
      • 2017-03-14
      • 2020-06-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-11
      相关资源
      最近更新 更多