gpt4 book ai didi

sql-server - 使用 SqlClient 类时如何在 SQL Server 中获取插入的 ID?

转载 作者:行者123 更新时间:2023-12-03 11:19:30 26 4
gpt4 key购买 nike

所以这是帖子的延续:
Best way to get identity of inserted row?

那个帖子提议,我同意,使用 Inserted安全返回插入的功能 id列)。

在实现这个功能的时候,好像SqlClient .net 框架不支持此功能,并且在尝试执行命令时失败,我收到以下异常:

System.Data.SqlClient.SqlException: 'Cannot find either column "INSERTED" or the user-defined function or aggregate "INSERTED.Id", or the name is ambiguous.'



我只是在使用:
return (T)command.ExecuteScalar();

查询在哪里:
INSERT INTO MyTable 
OUTPUT INSERTED.Id
(Description)
VALUES (@Description)

并且该表仅包含
ID (identity int)
Description (varchar(max))

如果不可能,是否有其他安全的方法而不在中间使用可能影响性能的变量?

谢谢

最佳答案

你做的一切都是正确的,但你放错了 OUTPUT子句:它在列列表之后和 VALUES 之前, IE。

INSERT INTO MyTable (Description) 
OUTPUT INSERTED.Id
VALUES (@Description)

关于sql-server - 使用 SqlClient 类时如何在 SQL Server 中获取插入的 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49786640/

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