【发布时间】:2015-04-21 14:20:32
【问题描述】:
我是存储过程的新手,只知道 SQL 的基础知识。在一些 SO 问题的帮助下,我能够弄清楚 SCOPE_IDENTITY() 函数可用于获取最近添加的行的标识值。现在我正在尝试使用存储过程在表中插入一行,并且我希望这个新插入的行的标识必须分配给存储过程的变量。以下是代码:
DECLARE @retID int = -1
SET @retID = (INSERT INTO [InfoValues]([InfoID],[Value],[UserID],[DateAdded],[DateUpdated]) VALUES(@item2,@item,@UserID,GETDATE(), GETDATE()); SELECT SCOPE_IDENTITY())
但是这段代码在INSERT 子句处显示语法错误。那么正确的做法是什么呢?
【问题讨论】:
标签: sql sql-server database stored-procedures sql-server-2012