2017-05-19 10 views
0

데이터베이스 범위 자격 증명을 SSDT로 가져 오는 데 문제가 있습니다.SSDT의 데이터베이스 범위 자격 증명 문제 (Visual Studio 2017)

Azure SQL 데이터베이스에서 SSMS를 사용하여 외부 테이블에 연결하기 위해 외부 데이터 원본을 만드는 데 사용한 데이터베이스 범위 자격 증명을 만들었습니다. SSMS에서 제대로 작동하는 모든 것이 sys.database_scoped_credentials, sys.external_data_sources, sys.external_tables에서 생성 한 모든 것을 볼 수 있으며 외부 테이블을 잘 액세스 할 수 있습니다.

데이터베이스 프로젝트를 Visual Studio 2017 (SSDT 버전 15.1)에 가져 왔습니다. 데이터베이스 범위 자격 증명을 가져 오지 않았으므로 외부 데이터 원본에서 찾을 수 없으며 빌드가 실패합니다.

오류 코드 : SQL71501 : SQLExternalDataSource : [myExternalDataSource]에 SqlDatabaseCredential [myCredential]에 대한 확인되지 않은 참조가 있습니다.

누구든지 문제를 해결하는 방법을 알고 계십니까? 미리 감사드립니다.

답변

1

가져 오기 작업 중에 자동으로 생성되지 않는 개체는 수동으로 만들 수 있습니다. DB를 범위의 자격 증명의 경우, 같은 것을 것 :

  • 솔루션 탐색기에서 데이터베이스 프로젝트를 마우스 오른쪽 단추로 클릭 한 다음에 대한 새 항목을
  • 검색 추가를 클릭하고 스크립트 (빌드)와 이름을 선택 DB 범위의 자격 증명 후
  • SQL Server 개체 탐색기 창에서 DB 범위의 자격 증명을 마우스 오른쪽 단추로 클릭하고 코드보기
  • 코드보기 탭에서 DB 범위의 자격 증명 정의를 복사하여 DB 프로젝트 탭.
+0

답장을 보내 주셔서 감사합니다. Database Scoped Credential 스크립트를 수동으로 가져 오면 이제 모델의 유효성이 검사됩니다. 이제 다음 단계에서 자동 생성 배치 스크립트는 해당 신임 정보를 사용하는 CREATE EXTERNAL DATA SOURCE [mySource] 문에서 실패합니다. SQL72014 .Net SqlClient 데이터 공급자 ... 'EXTERNAL'근처의 구문이 잘못되었습니다. 내가해야 할 다른 것이 있습니까? – mark

+0

더 구체적으로 실패 할 수 있습니까? 에서와 같이 데이터베이스 프로젝트를 빌드하지 못합니까? SQL Server 인스턴스 (예 : SQL Server 2014)에 데이터베이스 프로젝트를 게시하려고 할 때 오류가 발생합니까? 그 오류가 보여 질 수있는 몇 가지 시나리오가 있습니다. –

+0

Azure SQL 데이터베이스에 배포 할 시점이 아직 없습니다 (최종 목표 임에도 불구하고). 지금 당장 Azure SQL 데이터베이스의 데이터베이스 스키마를 Visual Studio로 다운로드하여 빌드하려고했습니다. 출력의 마지막 줄은 다음과 같습니다. 일괄 처리를 실행하는 동안 오류가 발생했습니다. "MyDatabaseProject.sqlproj"프로젝트 완료 - 실패했습니다. 빌드가 실패했습니다. ========== 빌드 : 성공 또는 최신 1 개, 실패 0 개, 건너 뛰기 0 개 ========== ========== 배포 : 0 성공, 1 실패, 0 건너 뛰기 ========== – mark