sql-server – 从SQL Server 2008中的INSERT语句返回值
发布时间:2020-12-24 12:21:21 所属栏目:MsSql教程 来源:网络整理
导读:数据库:SQL Server 2008 有没有办法让insert语句在SQL Server中返回一个值, 有类似的问题 Return a value from a insert statement,谈论ORACLE. 我没有太多使用数据库,也没有太多了解ORACLE / SQL Server,所以很遗憾再次问到它. 为简单起见,我举一个小例
数据库:SQL Server 2008 有没有办法让insert语句在SQL Server中返回一个值, 有类似的问题 Return a value from a insert statement,谈论ORACLE. 我没有太多使用数据库,也没有太多了解ORACLE / SQL Server,所以很遗憾再次问到它. 为简单起见,我举一个小例子: 表EmpDetails有EmpiD和EmpName. EmpID的值由数据库自动生成. INSERT INTO EMPDETAILS VALUES("John") 现在我想获得与John关联的EmpID的值 我不想要存储过程,我只想要一个SQL语句. 解决方法是的 – 您可以在INSERT语句中使用鲜为人知且少用的 OUTPUT clauseINSERT 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") (编辑:淮北站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐
热点阅读