이 항목은 다음 제품에 적용됩니다.
Visual Studio Ultimate |
Visual Studio Premium |
Visual Studio Professional |
Visual Studio Express |
|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
트리거를 디버깅하려면 트리거를 발생시킬 저장 프로시저에 중단점을 설정하고, 트리거에 중단점을 설정한 다음 연습: Transact-SQL 저장 프로시저 디버깅에 설명된 대로 진행합니다.
다음 예제에서는 DELETE 트리거가 있는 Purschasing.Vendor 테이블이 포함된 AdventureWorks2008 데이터베이스를 사용합니다.이 예제에는 테이블의 행을 삭제하여 트리거를 발생시키는 저장 프로시저가 포함되어 있습니다.트리거에 중단점을 설정하고, 다른 매개 변수로 저장 프로시저를 실행하여 트리거의 다른 실행 경로를 확인할 수 있습니다.
참고
실제 설정이나 버전에 따라서 화면에 나타나는 대화 상자와 메뉴 명령이 도움말의 설명과 다를 수 있습니다.설정을 변경하려면 도구 메뉴에서 설정 가져오기 및 내보내기를 선택합니다.자세한 내용은 Visual Studio Settings을 참조하십시오.
SQL 트리거를 디버깅하려면
새 SQL Server 프로젝트에서 AdventureWorks2008 샘플 데이터베이스에 연결합니다.자세한 내용은 방법: 서버 탐색기를 사용하여 데이터베이스에 연결을 참조하십시오.
다음의 첫 번째 예제 단원에 있는 코드를 사용하여 새 저장 프로시저를 만들고 이름을 UpdateCurrency_T_SQL로 지정합니다.자세한 내용은 방법: SQL Server 데이터베이스 프로젝트 또는 서버 프로젝트를 사용하여 디버깅을 참조하십시오.
DeleteVendor에 중단점을 설정합니다.직접 데이터베이스 디버깅에서는 프로시저의 첫째 줄이 중단점 역할을 수행하기 때문에 이 단계는 선택 사항입니다.
트리거에 대해 중단점을 설정합니다.
테이블 노드, Purchasing.Vendor 테이블 노드를 차례로 마우스 오른쪽 단추로 클릭하고 이름이 dVendor인 트리거의 아이콘을 두 번 클릭하여 트리거 소스 코드를 엽니다.
SET NOCOUNT ON 문 옆에 있는 회색 여백을 마우스 왼쪽 단추로 클릭하여 트리거에 중단점을 설정합니다.이 단계는 선택 사항이 아닙니다. 트리거에 중단점을 설정하지 않으면 한 단계씩 코드를 실행할 때 해당 코드를 건너뜁니다.
저장 프로시저의 코드를 한 단계씩 실행합니다.자세한 내용은 방법: 서버 탐색기를 사용하여 개체의 코드를 한 단계씩 실행을 참조하십시오.
저장 프로시저 실행 대화 상자가 나타나고 매개 변수 값을 묻는 메시지를 표시합니다.
다음 매개 변수 값을 설정합니다.
@entityID = 1492
저장 프로시저의 첫 번째 실행 코드 줄인 SET NOCOUNT ON 줄에 명령 포인터를 나타내는 노란색 화살표가 표시됩니다.
다른 디버깅 기능을 사용해 봅니다.
F11 키나 한 단계씩 코드 실행 단추를 사용하여 코드를 한 단계씩 실행합니다.
DELETE 문에서 F11 키를 다시 누르면 트리거의 코드가 한 단계씩 실행됩니다.
다시 저장 프로시저로 나갈 때까지 트리거의 코드를 한 단계씩 실행하고 끝까지 계속합니다.
예
다음은 트리거를 발생시키는 저장 프로시저의 코드입니다.
ALTER PROCEDURE dbo.DeleteVendor
(
@entityID int
)
AS
SET NOCOUNT ON
DELETE Purchasing.Vendor
WHERE BusinessEntityID = @entityID
RETURN
.gif)
.gif)