@@ ROWCOUNT的正确类型是什么?

时间:2017-01-04 09:05:29

标签: sql sql-server sql-server-2008 rowcount

我正在SQL Server 2008中编写存储过程,我需要计算受查询影响的行。

DECLARE
    @my_rows                    AS INT

然后

SELECT *
FROM a table
WHERE some conditions
SET @my_rows=@@ROWCOUNT

如果我将my_rows声明为varchar它可以正常工作,但如果我声明为INT,我会收到以下错误:

  

将表达式转换为数据类型tinyint的算术溢出错误。

申报的正确类型是什么?我认为行的数量只能是整数,而且是0和行的总数。

1 个答案:

答案 0 :(得分:2)

根据MSDN,@@ROWCOUNT的正确返回类型为int。

SQL代码很好,即使@my_rows声明为tinyint也能正常工作。