2017-02-06 5 views
0

정의 된 순서대로 실행해야하는 여러 SQL DB 유지 관리 스크립트를 만들었습니다. 2 개의 스크립트가 있습니다. 두 번째 스크립트를 실행하려면 첫 번째 스크립트를 성공적으로 실행해야합니다. 스크립트에는 테이블, 저장 프로 시저, SQL 작업 등을 만드는 쿼리가 포함되어 있습니다.MS SQL Server에서 SQL 스크립트가 성공적으로 실행되었는지 확인하는 방법은 무엇입니까?

이 작업을 수행하는 최적의 방법을 제안하십시오. MS SQL Server 2012를 사용하고 있습니다. SQL 작업을 사용하지 않고 구현하려고합니다.

+1

'ERRORLEVEL' :이 답변보기 http://stackoverflow.com/a/29003974/21336 – devio

답변

0

SQL Server 에이전트 작업을 만들 수 있습니까? 단계를 1 단계 : 첫 번째 스크립트 실행, 2 단계 : 두 번째 스크립트 실행으로 설정할 수 있습니다. 에이전트 작업 설정에서 1 단계가 실패 할 때를 결정할 수 있습니다. 2 단계를 실행하지 마십시오. 이메일을 보내고 다른 단계로 건너 뛰고 다른 코드를 실행하도록 설정할 수도 있습니다. 첫 번째 코드가 오류 메시지와 함께 실패한 경우 두 번째 스크립트가 실행되지 않습니다. - 정말 일자리를 피할 필요가 있다면 두 번째 스크립트에 if exists 문을 몇 개 추가 할 수 있습니다. 그러나 매우 지저분해질 것입니다.

+0

SQL 작업을 만드는 것은이 작업을 사용하지 않으려 고합니다. 제안 해 주셔서 감사합니다. – Ankush

1

확실한 진술을하고 있습니다. 나는 당신이 "성공적으로 실행"한 것을 완전히 이해하지 못하고 있지만, 실행 중에 SQL 에러가 없다면 : 스크립트를위한 작업을 생성하고 두 단계를 생성하는 것이 가장 좋습니다. 스크립트와 두 번째. 두 단계가 모두 끝나면 1 단계의 고급 옵션으로 이동하여 필요에 맞게 설정하십시오.

Screenshot

+0

그건 분명히 분명합니다. 그러나 SQL 작업은 필자가이 작업을 사용하지 않으려 고 노력하면서 최후의 수단이 될 것입니다. 제안 해 주셔서 감사합니다. – Ankush

+0

내 질문에 대한 첫 번째 대답 인 것처럼 대답으로 받아 들였습니다. 또한, 나는이 방법을 나의 구현에 사용할 것이다. 감사합니다. . – Ankush

+0

제 생각에 세 번째 테이블 (단순히 "tbl_script_verifier"라고 부름)에 0 비트 ("first_script"라고 부름)를 지정할 수 있습니다. 첫 번째 스크립트를 구걸 할 때 "first_script"를 0으로 설정하고 첫 번째 스크립트를 성공적으로 완료하면이 스크립트를 1로 설정합니다. 두 번째 스크립트를 실행하기 전에 "first_script"가 1로 설정되어 있는지 확인합니다. 작업을 수행해야합니다. 약간 애호가로 가서 시작/종료 된 로그 설정 날짜로 바꿀 수도 있습니다. . –

0

두 스크립트는 다른 파일

이 먼저 종료 읽어 테이블에 두 번째 스크립트 .Change 완료 날짜를 기록 할 것 문을 추가에있는 경우 경우

두 경우는 같은 파일에 성공하는 것은 아닙니다

가 트랜잭션에 읽기 @@ 두 번째 스크립트 및 종료, 만약의 시작 TRANCOUNT 확인 SQL 서버 2005의 작업 스케줄링 서브 시스템, SQL Server 에이전트, 경고 로그 파일 집합을 유지

0

미만 1 및 실행 된 작업에 대한 오류 메시지가 % ProgramFiles % \ Microsoft SQL Server \ MSSQL.1 \ MSSQL \ LOG 디렉터리에 기록됩니다. SQL Server는 최대 9 개의 SQL Server 에이전트 오류 로그 파일을 유지 관리합니다. 현재 로그 파일의 이름은 SQLAGENT .OUT이며, 아카이브 된 파일의 번호는 순차적입니다. SQL Server Management Studio를 사용하여 SQL Server 에이전트 로그를 볼 수 있습니다.

관련 문제