SQL Server/SQL Server Tip

SQL Server2012 향상된 디버깅 기능

SungWookKang 2015. 7. 23. 08:41
반응형

SQL Server2012 향상된 디버깅 기능

   

-      Version : SQL Server 2012

   

SSMS의 디버깅 기능은 SQLServer 2008부터 추가 되었다. SQL Server 2012에서는 좀더 개발환경에맞추어서 디버깅 기능이 향상 되었다.

   

SQL Server 2008 디버깅: http://sqlmvp.kr/140176612565

   

SQL Server 2012에서도 디버깅 하는 방법은 SQL Server 2008과 동일하다. [디버그] – [디버깅 시작] 또는 [Alt+ F5], 빠른 실행 도구 모음에서 [디버그]를실행하면 된다.

    

   

디버깅 실습을 위해서 간단한 코드를 생성 한다.

declare @a int = 1

   

while (@a < 10)

begin

    print @a

    set @a = @a + 1

end

   

코드를 실행해 보면 변수의 값이 10보다 작을 때까지 +1씩 카운터하며 루프로 동작하는 것을 확인 할 수 있다.

   

   

중단점을 설정하는 방법은 [F9] 또는 해당 위치에서 마우스로 클릭, 또는 마우스 우클릭하여 [중단점 삭제 / 설정]을 할 수 있다..

   

[SQL Server 2008]

   

   

[SQL Server 2012]

SQL Server 2012의 경우에는 이전 버전보다 많은 기능이있음을 메뉴만 살펴보아도 알 수 있다.

   

   

중단점의 옵션 중에 [조건]이라는항목이 있다. 조건의 경우에는해당 조건이 충족 되었을 때 실행이 중단점에서 멈추는 기능이다.

   

   

우리는 상황에 따라 반복을 수 십, 수 백번 해야 하는데 이때 특정값이 도달했을 때 멈추는 기능이 필요 할 것이다. 아래 예시 화면은@a의 값이 5가 되었을 때 중단한다.

   

   

적중 횟수는 현재 중단점이 설정된 부분이 몇 번 호출 되었는가에 따라서 그 카운트가 충족 되었을 때 실행을 멈춘다.

   

중단점 적중 횟수는 다음과 같이 설정 할 수 있다. 변수 상관없이해당 위치가 5번 호출되었을 때 중단한다.

   

중단점에 조건 또는 적중 횟수 등 작업을 부여하게 되면 중단점의 모양이 빨간 원에서 가운데 흰색 십자가 모양의무늬로 변경되는 것을 확인 할 수 있다. 이때 마우스를 중단점 위치에 롤오버해보면 툴팁으로 중단점이설정된 내역이 간락하게 나타난다.

 

 

코드가 실행 될 때 SQL Server 2012에서는 빠른 팝업으로정보를 볼 수 있다. 또한 세션이 실행 되는 동안 조건 값 등을 바로 변경 할 수 있다.

   

   

아래 화면은 현재 조건 값 4를 빠른 팝업에서 9로 변경하였을 때 결과 화면이다. 내가 직접 수정한 조건이 바로적용되어 결과가 나타난 것을 확인 할 수 있다.

   

   

SQL Server 2008에 비해서 여러 기능이 추가 되었지만 프로그래머입장에서 보면 아직 디버그 기능이 부족한 건 사실이다. 하지만 앞의 내용만 잘 활용하더라도 개발 효율을향상 되리라 생각한다.

   

2013-01-07/ 강성욱 / http://sqlmvp.kr

반응형