gpt4 book ai didi

sql - 在创建 IDENTITY 的同一个 T-SQL 语句中获取 IDENTITY 值?

转载 作者:行者123 更新时间:2023-12-03 01:49:27 25 4
gpt4 key购买 nike

有人问我是否可以有一个插入语句,其中有一个作为“身份”列的 ID 字段,以及分配的值是否也可以插入到同一记录中的另一个字段中,在同一个插入中声明。

这可能吗(SQL Server 2008r2)?

谢谢。

最佳答案

您实际上不能这样做 - 因为用于 IDENTITY 列的实际值实际上仅在 INSERT 完成时固定和设置。

但是,您可以使用例如触发器

CREATE TRIGGER trg_YourTableInsertID ON dbo.YourTable 
AFTER INSERT
AS
UPDATE dbo.YourTable
SET dbo.YourTable.OtherID = i.ID
FROM dbo.YourTable t2
INNER JOIN INSERTED i ON i.ID = t2.ID

这将在插入任何行后立即触发,并将 OtherID 列设置为插入行的 IDENTITY 列的值。但严格来说,它不在同一个声明中 - 它只是在您的原始声明之后。

关于sql - 在创建 IDENTITY 的同一个 T-SQL 语句中获取 IDENTITY 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8171622/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com