2014-06-12 2 views
0

, 나는 SqlConnectionSqlConnection에 결합 SqlCommand creaate. 그런 다음 SqlCommandCommandTimeout 속성을 1 시간으로 설정했습니다. 이 SqlCommand은 데이터베이스에서 저장 프로 시저를 호출합니다. 저장 프로 시저 내에서 다음 명령을 사용하여 SSIS를 실행합니다.SQL 명령 제한 시간

master..xp_cmdshell 'dtexec /ISSERVER "' + @PackageName + '" /Par "$ServerOption::SYNCHRONIZED(Boolean)";True' 

이 SSIS는 꽤 오랜 시간이 걸릴 수 있습니다. SSI가 1 시간 이상 걸리면 SqlCommand이 시간 초과됩니다. 그렇다면 SSIS는 어떻게 될까요? 완료 될 때까지 패키지가 계속 실행됩니까 아니면 제한 시간이되면 중지됩니까? 그리고 그 결과는 어떨까요? 트랜잭션과 같이 롤백 될 것인가 또는 데이터 무결성을 어떻게 점검합니까?

+1

좀 더 짧은 시간 제한을 설정해 보았습니까? SSIS 패키지가 연결 시간 초과로 계속 실행된다고 가정하면 패키지를 시작하기 위해 연결을 사용하고 패키지가 완료되었는지 주기적으로 확인 (패키지가 테이블에 결과를 기록하도록 할 수도 있음) 할 수 있습니까? 그 실행)? SSIS와 함께 일한 적이 없기 때문에 여기에 spitballing. – Tim

답변

0

좋아, 나는 시도하고 시간 제한입니다 말하는 웹 페이지에도 불구하고, SSIS가 지속될 것으로 보인다. Integration Services 카탈로그 확인> "패키지"> 보고서> 모든 실행은 상태가 '실행 중'으로 표시됩니다. 또한 데이터베이스에 더 많은 데이터가 삽입 된 것을 볼 수 있습니다. 그런 다음 잠시 기다린 후 상태가 '성공'이됩니다.