SQLCMD. PowerShell 스크립트는 $ LASTEXITCODE를 확인합니다. $ LASTEXITCODE가 0이 아니면 "스크립트가 실패했습니다. 반환 코드는 $ LASTEXITCODE입니다."
스크립트는 다른 SQL 스크립트를 실행하기 위해 여러 번 사용 및 배포에 실행 파워 쉘 스크립트의 체인의 일부입니다.
스크립트는 대부분의 시간을 잘 실행하지만 무작위로 -1073741502의 리턴 코드로 실패합니다.
이것은 SQL2008로 업그레이드 한 후에 만 발생했으며 수동으로 단일 powershell 스크립트 나 sql cmd 스크립트를 수동으로 실행하여 재현 할 수 없습니다.
이
는 PowerShell 명령이다& 'sqlcmd.exe를'-S $ databaseServer -r -b -E -I '$ scriptFullPath'
경우 ($ LASTEXITCODE -ne 0) { 던져 "스크립트가 실패했습니다. 코드는 $ LASTEXITCODE이다 돌려줍니다." }
겉으로보기에는 무작위적인 실패의 본질은 많은 고통을 초래합니다. 오류가 SQL2008, SQLCMD (osql.exe와 동일한 동작을 나타내지 만) 또는 어쨌든 powershell에 연결되었는지는 확인할 수 없습니다. SQL 스크립트는 잠시 동안 확인을 실행하고 실패 이후
나타납니다 실행 SQLCMD 실제 SQL 문제는 무관합니다.
같은 실패
는 다양한 워크 스테이션 및 서버 (Win7에, WIN2003 및 Win2008)이 아래로 많이 주시면 감사하겠습니다 추적하는 방법에 대한 지침에 볼 수있다. 당신이 PowerShell을 사용하는 경우
알려진 문제 일 수 있습니다. [connect : connect.microsoft.com] (http://connect.microsoft.com/PowerShell/feedback/details/496326)/안정성 문제 - 모든 응용 프로그램 실행 - lastexitcode-1073741502 # 세부 정보) –
@ user978511 - 응용 프로그램과 관련이 없습니다. 존의 링크에 유의하십시오. – JNK
@jon Z. 링크를 제공해 주셔서 감사합니다. 찾았습니다. 다행이 광기에 나는 혼자가 아닙니다. –