我正在尝试返回我在sql中更新的行的ID
UPDATE ITS2_UserNames SET AupIp = @AupIp WHERE @Customer_ID = TCID AND @Handle_ID = ID SELECT @@ERROR AS Error,@@ROWCOUNT AS RowsAffected,SCOPE_IDENTITY() AS ID
并且我一直在获得Null的ID,我该如何得到这个?
解决方法@H_301_8@
@@ identity和scope_identy()将提供一个新行的标识,即.插入后.更新后,该行的身份是… @Customer_ID或@Handle_Id?如果是不同的字段,您将使用OUTPUT子句返回更新行的ID:
UPDATE ITS2_UserNames
SET AupIp = @AupIp
OUTPUT INSERTED.PrimaryKeyID
WHERE @Customer_ID = TCID AND @Handle_ID = ID
UPDATE ITS2_UserNames SET AupIp = @AupIp OUTPUT INSERTED.PrimaryKeyID WHERE @Customer_ID = TCID AND @Handle_ID = ID