我编写了存储过程,里面有2个Insert查询和1个Update查询。在所有这些中,一次执行插入查询或更新查询。现在我的问题是在每种情况下获得ROWCOUNT
。假设是否执行了插入操作,那么我希望存储过程将@@ROWCOUNT
返回给调用应用程序,以便应用程序知道所需操作是否正确执行。任何人都可以建议/告诉我如何从存储过程中获取受影响的行?
答案 0 :(得分:0)
使用存储过程中的输出参数返回插入/更新的RowCount。
Refer MSDN link for more information关于如何使用输出参数
您可以拥有多个输出参数,因此您可以为插入提供2个不同的输出参数,并为更新语句提供第3个输出参数。
示例:
CREATE PROCEDURE GetEmployeeData
@employeeID INT,
@managerID INT **OUTPUT**
AS
BEGIN
....
....
此外,您始终可以使用分隔符连接2个插入/更新的行计数,并将它们作为一个值返回,例如:“10; 0” - 但这是旧式和“我不建议”的方法。
此外,您可以创建一个表变量并返回包含rows =插入/更新数量的表以及受影响的列= RowCount的值。