나는 SQL Server 2008의 저장 프로 시저를 쓰고 난 쿼리에 의해 영향을받는 행을 계산해야합니다.@@ ROWCOUNT의 올바른 유형은 무엇입니까?
DECLARE
@my_rows AS INT
다음
SELECT *
FROM a table
WHERE some conditions
SET @[email protected]@ROWCOUNT
제대로 작동 VARCHAR로 내가 my_rows를 선언하는 경우
하지만 INT로 선언하는 경우 나는 다음과 같은 오류 얻을 :Arithmetic overflow error converting expression to data type tinyint.
올바른 종류가 무엇을 알리다? 나는 행의 수는 정수일 수 있고 0과 행의 총 수 사이에 있다고 생각한다.
나는 아무 문제없이 코드를 테스트했다. 예외 상태로'@ my_rows'를'int'가 아니라'tinyint'로 선언하셨습니까? HarshalY는 그의 대답에 쓴 – Magnus
음,의 데이터 유형은 ['@@ ROWCOUNT'] (https://msdn.microsoft.com/en-us/library/ms187316.aspx는) int''사실이다. 내가 (실제 선택 문) 코드를 시도했습니다 나는 오류 없어. 오류 텍스트는'@ my_rows'를'int' 대신'tinyint'로 선언했음을 시사합니다. 아마도 이것은 문제입니다. –
질문의 코드에서 오류가 발생하지 않습니다. 이 오류가 실제로 실행중인 코드와 일치하는지 확인하십시오. –