에서 작업을 구축하지의 차이 스크립트가 Visual Studio 2012 데이터베이스 프로젝트이고 배포 할 때 None
이 스크립트를 컴파일하거나 포함하지 않는다는 것을 알고 있습니다. 아무도 확실하게 Build
및 Compile
의 미묘함을 명확하게 정의하는 기사로 안내하거나 안내 할 수 있습니까?, "빌드", "컴파일"내가 SQL에 대한 <code>PreDeploy</code> 및 <code>PostDeploy</code><strong>빌드 작업</strong>에 대한 많은 정보 (웹</em>에 <em>를) 찾을 수 있지만 "없음"Visual Studio를 데이터베이스 프로젝트
내 생각은 대략 이고 그 중은 모두 스키마에 대해 컴파일되지만 Build
만 배포됩니다. 이 올바른지?
내가 원하는 것은 현재 스키마에 대한 시드 (시드) 스크립트의 유효성을 검사하고 유효하지 않은 스키마 구조에서 빌드 오류가 발생하는 올바른 설정이지만 데이터베이스를 게시하거나 스키마 비교 세션에 표시하지 않는 것입니다.
BTW, 의 멋진 상세 답변 [This (http://stackoverflow.com/questions/145752/what-are-the-various-build-action-set-sudio-project-properties) 게시물이 데이터베이스 프로젝트의 컨텍스트에 있지 않습니다. – Dib
글쎄, "배포"는 배포 후/배포 전 스크립트의 컨텍스트에서 하나만 가질 수 있습니다. 나머지는 해당 스크립트에 "포함"됩니다. 컴파일러가 파일을 테이블/뷰/다른 객체로 빌드하려고하기 때문에 이러한 파일을 "빌드"하도록 설정하지 않으려합니다. 나는 그 (것)들이 할 무슨 아이디어도 전에 컴파일하기 위하여 그 (것)들을 놓는 것을 시도하지 않았다. 나는 대개 그들을 "없음"으로 남겨두고 작성시 신중하게 확인하십시오. 오류를 잡는 데 도움이되도록 주위에 try/catch 논리를 작성할 수 있습니다. 당신이 그들을 포함하지 않으면 DB 게시와 함께 배포하지 않을 것입니다. –