2012. 3. 23. 12:30

저장프로시저를 만들고 테스트해보면 메시지
"(1개 행이 영향을 받음)"
이런 메시지를 볼수 있습니다.

말그래로 저장프로시저 안에서 테이블에 영향을 주면(4대 천황같은 것을 사용하였을때) 출력됩니다.
만약 여러번 영향을 주면(select를 여러번 한다던가)하면 여러줄이 나옵니다.


그런데 이런 메시지가 서버에 부하를 준다는 군요 ㅡ.-;

그렇기 때문에 'Set Nocount on' 사용을 권장하고 있습니다.
저장프로시저의 시작점에 'Set Nocount on'를 적어 주시면 됩니다.
(참고 : MSDN - SET NOCOUNT(Transact-SQL))


예를 들면 아래와 같습니다.
ALTER PROCEDURE [dbo].[TestSelect]	
As
BEGIN
Set Nocount on
 
Select * From tb_WebServiceTest where intIndex = 0
Select * From tb_WebServiceTest where intIndex = 0
Select * From tb_WebServiceTest where intIndex = 0
END

이렇게 하면 다음과 같이 메시지가 하나만 나오게 되죠.