gpt4 book ai didi

sql-server - 从 SQL Server 2008 中的 INSERT 语句返回值

转载 作者:搜寻专家 更新时间:2023-10-30 19:58:13 26 4
gpt4 key购买 nike

数据库:SQL Server 2008

有没有办法让插入语句在 SQL Server 中返回一个值,

中有类似的问题

Return a value from a insert statement ,其中谈到了 ORACLE。

我对数据库的工作不多,对 ORACLE/SQL Server 也不是很了解,所以不好意思再问一遍。

为了简单起见,让我提供一个小例子:

EmpDetails 表有 EmpiDEmpNameEmpID 的值由数据库自动生成。

INSERT INTO EMPDETAILS VALUES("John")

现在我想获取与 John 关联的 EmpID 的值

我不需要存储过程,我只需要 SQL 语句。

最佳答案

是的 - 您可以使用鲜为人知且很少使用的 OUTPUT clause在您的 INSERT 语句中

INSERT INTO dbo.YourTable(col1, col2, col3, ...., ColN)
OUTPUT Inserted.Col1, Inserted.Col5, Inserted.ColN
VALUES(val1, val2, val3, ....., valN)

这会返回一组正常的数据,您可以根据需要进行处理。

如 MSDN 文档所示,您还可以将 OUTPUT 值发送到例如如果需要,一个表变量或临时表供以后使用。

要回答您更新的问题,请使用:

INSERT INTO dbo.EMPDETAILS(EmpName)
OUTPUT Inserted.EmpID
VALUES("John")

关于sql-server - 从 SQL Server 2008 中的 INSERT 语句返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7825005/

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