0

Visual Studio 2013에 데이터베이스 프로젝트를 만들어 dacpac 파일을 만들고 SQL Server Management Studio를 사용하여 SQL Server에 배포합니다. 나는 성공적으로 SQL 서버 2012에 dacpac을 배포 할 수 있지만 내가하려고 할 때 DAC 패키지를 선택할 때, 나는 오류 메시지가 다음받을 SQL 서버 2008 R2에 배포하는 : 나는 "SQL Server 2008을"선택VS13 데이터베이스 프로젝트를 사용하여 만든 SQL Server 2008 R2에 dacpac 배포 문제

<DacType xmlns='http://schemas.microsoft.com/sqlserver/dac/Serialization/2012/02'> was not expected. (es3ttafd) 

을 프로젝트 설정에서 대상 플랫폼으로 사용하지만 네임 스페이스를 수정하지 않는 것 같습니다. dacpac의 압축을 풀면이 네임 스페이스가 DacMetadata.xml, model.xml 및 Origin.xml 파일에 있음을 알 수 있습니다.

SQL Server 2008에 배포 할 수 있도록하기 위해 dacpac에 해당 네임 스페이스를 포함시키지 않거나 (또는 ​​올바른 것으로 변경하는 것) 할 수있는 작업이 있습니까? SQL Server에서 VS를 통해 프로젝트를 성공적으로 게시 할 수 있지만 마법사를 사용하여 dac 패키지를 만들고 다른 서버에도 배포 할 수 있기를 원합니다.

감사합니다.

답변

1

SQL Server Management Studio의 이전 버전을 사용하여 SQL Server 2008에 배포하는 것으로 의심됩니다. 최신 SSMS (여기에서 사용 가능 : https://msdn.microsoft.com/en-us/library/mt238290.aspx)를 다운로드하고 게시하여 사용하는 것이 좋습니다.

또는, (여기에 해당 : https://www.microsoft.com/en-us/download/details.aspx?id=53876) 데이터 계층 응용 프로그램 프레임 워크의 최신 버전 :

SqlPackage.exe /a:publish /tcs:"Data Source=SERVER;Initial Catalog=DBNAME;Integrated Security=true" /sf:C:\project\mydb.dacpac 

참조 문서 그래서처럼 dacpac 파일을 게시 할 수 있습니다 SqlPackage.exe을 포함 SqlPackage.exe 여기에 : https://msdn.microsoft.com/en-us/library/hh550080(v=vs.103).aspx

+0

감사합니다. SSMS16을 사용해 보았는데 효과가있었습니다. 나는 여기에 게시하기 전에 SSMS14를 시도했지만 아직 작동하지 않아 SSMS 버전과는 아무런 관련이 없다고 가정하고 VS에서 DB 프로젝트의 결과를 얻었습니다. 그러나 대상 플랫폼이 SQL Server 2008로 설정되었지만 VS에서 생성 된 것과 같은 DacType 네임 스페이스에 대한 수정 프로그램이 있습니까? – Kyris

+0

현재 작동 중입니다. 왜 SSMS 2014가 XML 네임 스페이스에 관한 오류를 줄지 확신하지 못합니다. 문맥은 SQL Server 2008 도구가 SQL Server 2012 (및 최신) 도구와 다른 파일 형식을 가진 dacpac 파일을 생성한다는 것입니다. 이전 도구는 새로운 파일 형식을 인식하지 못합니다.하지만 SSMS 2014는 VS2013에서 만든 dacpac 파일 형식에 문제가 없어야합니다. –

관련 문제