다음을 통해 공유


데이터베이스 프로젝트, 빌드 및 배포 문제 해결

업데이트: 2007년 11월

데이터베이스 프로젝트를 생성, 수정, 빌드 또는 배포하는 경우 다음 문제가 발생할 수 있습니다.

  • 데이터베이스 프로젝트 생성 시 오류 발생

  • SQL Server 2000 데이터베이스를 디자인 타임 유효성 검사에 사용 시 오류 발생

  • 데이터베이스 개체 오류

  • Microsoft SQL Server 2005의 새 예약어 사용

  • 명령줄 빌드의 차이

  • 대칭 키, 비대칭 키 및 인증서

  • 종속성 및 업데이트 스크립트

  • 자신을 사용자로 추가 시 오류 발생

  • 따옴표 붙은 식별자로 인해 프로젝트 다시 로드 문제가 발생할 수 있음

  • 데이터베이스의 내부 상태가 그 내용과 일치하지 않음

  • 전체 텍스트 검색

  • SQLCLR 개체

  • 보류 중인 변경 내용 취소

  • Windows NT 사용자 또는 그룹을 찾을 수 없음

  • 중복된 개체 이름 및 파일 제외

  • CREATE ASSEMBLY에서 파일 참조가 지원되지 않는 문제

  • SQL Server 2000에서 SQL Server 2005로 변환 관련 문제

  • 데이터베이스 및 서버 정규화 이름

  • 확장 속성 지원

  • 데이터베이스 스키마 가져오기 성능

  • 빌드 오류 탐색

  • 데이터베이스 프로젝트 및 TRUSTWORTHY 설정

  • 연결된 서버 및 스크립트 가져오기

  • 데이터베이스 간 참조 사용 시 구문 오류

  • 확장 속성이 있는 XML 인덱스

  • Team Foundation Build의 권한 문제

  • 빌드 도중 나타나는 예기치 않은 토큰 경고

  • x64 기반 컴퓨터에서 원격 데이터베이스 서버로 명령줄 배포 시 실패

데이터베이스 프로젝트 생성 시 오류 발생

데이터베이스 프로젝트를 만들 때 디자인 타임 유효성 검사에 사용되는 Microsoft SQL Server 로컬 인스턴스에서 데이터베이스를 만들 권한이 없으면 오류 메시지가 나타납니다.

참고:

SQL Server Management Studio와 같은 도구를 사용하여 SQL Server 인스턴스에 대한 사용 권한을 구성합니다. 관리 자격 증명을 사용하여 로그온할 수 없는 경우 SQL Server에서 데이터베이스를 만들 수 있는 권한을 부여하도록 관리자에게 요청해야 할 수도 있습니다.

디자인 타임 유효성 검사 데이터베이스에 지정한 인스턴스 이름이 정확해야 합니다. 자세한 내용은 방법: 디자인 타임 유효성 검사에 사용할 SQL Server 로컬 인스턴스 지정을 참조하십시오.

관리자 권한 없이 Visual Studio를 실행하면 "데이터베이스 'master'에서 CREATE DATABASE 사용 권한이 거부되었습니다."라는 오류가 나타날 수 있습니다. 이 오류를 해결하려면 sysadmin 권한이 있는 사용자가 디자인 타임 유효성 검사 데이터베이스에서 다음 스크립트를 실행해야 합니다.

USE master
GO
GRANT EXECUTE ON sp_detach_db TO public
GO

SQL Server 2000 데이터베이스를 디자인 타임 유효성 검사에 사용 시 오류 발생

디자인 타임 유효성 검사에 사용되는 데이터베이스를 SQL Server 2000 인스턴스로 변경한 다음 데이터베이스 프로젝트를 만들거나 수정하려고 하면 오류가 나타납니다. 오류는 "'ENABLE BROKER' 근처의 구문이 잘못되었습니다"와 같이 표시될 수 있습니다. 디자인 타임 유효성 검사 데이터베이스는 SQL Server 2005 기능을 사용합니다.

참고:

올바른 SQL Server 2005 데이터베이스 인스턴스를 디자인 타임 유효성 검사 데이터베이스로 지정해야 합니다. 자세한 내용은 방법: 디자인 타임 유효성 검사에 사용할 SQL Server 로컬 인스턴스 지정을 참조하십시오.

데이터베이스 개체 오류

데이터베이스 개체에 하나 이상의 구문 오류가 있는 경우 해당 데이터베이스의 아이콘에 오류 아이콘(빨간색 "!")이 표시되고 오류 목록 창에 관련된 오류 메시지가 나타납니다. SQL Server 로컬 인스턴스에 의한 디자인 타임 유효성 검사 중에 반환된 오류의 경우 행 번호는 정확하게 보고되지만 열 번호가 항상 열 1로 보고됩니다. SQL 구문 오류의 경우 행과 열이 모두 정확합니다.

참고:

오류 목록 창에 표시된 오류 메시지에서 오류를 해결할 수 있는 작업 정보를 제공해야 합니다. 오류를 해결하고 데이터베이스 개체를 저장하면 해당 데이터베이스 개체의 아이콘이 정상 상태로 돌아갑니다.

Microsoft SQL Server 2005의 새 예약어 사용

SQL Server 2005에서 예약된 새 키워드에는 EXTERNAL, PIVOT, REVERT, TABLESAMPLE, UNPIVOT 등이 있습니다. SQL Server 2000용 데이터베이스 프로젝트의 스키마 개체 이름으로 이러한 예약된 키워드를 사용하면 출력 창에 오류가 나타납니다.

참고:

이 제한을 해결하기 위해 스키마 개체 이름을 따옴표로 묶을 수 있습니다. 예를 들어 "CREATE TABLE [External] (c1 INT)"를 사용할 수 있습니다.

명령줄 빌드의 차이

Visual Studio에서 프로젝트를 열고 명령줄 빌드를 수행하면 사용자 인터페이스에서 빌드할 때 나타나는 모든 빌드 오류가 표시되지 않을 수도 있습니다.

참고:

이 문제를 해결하려면 명령줄 빌드를 수행하기 전에 Visual Studio에서 데이터베이스 프로젝트를 닫습니다.

대칭 키, 비대칭 키 및 인증서

Visual Studio Team System Database Edition에서는 대칭 키, 비대칭 키 또는 인증서를 데이터베이스 개체로 만들 수 없습니다. 데이터베이스 스키마를 가져오면 키 및 인증서 이름이 있는 배포 전 스크립트에 자리 표시자 주석이 포함됩니다. 이러한 개체를 만들려면 배포 전 스크립트를 변경해야 합니다. 이와 마찬가지로 데이터베이스 스키마를 비교하는 경우 누락된 대칭 키, 비대칭 키 또는 인증서를 만드는 데 필요한 T-SQL(Transact-SQL) 명령은 스키마 업데이트 스크립트에 포함되지 않습니다. 업데이트 스크립트를 편집기로 내보내고 이러한 개체를 만드는 문을 추가해야 합니다.

종속성 및 업데이트 스크립트

업데이트 스크립트에서 개체를 올바른 순서대로 생성하기 위해 스키마 비교는 개체 종속성을 검사합니다. 예를 들어 뷰가 테이블에 종속된 경우 뷰보다 먼저 테이블을 만들어야 합니다. 두 번째 개체에 종속된 개체에서 스키마 한정 이름을 사용하지 않는 경우 종속성이 확인되지 않거나 업데이트 또는 생성 스크립트의 문 순서가 잘못될 수도 있습니다. 이러한 차이로 인해 소스와 일치하도록 대상을 업데이트하거나 변경 내용을 데이터베이스로 배포할 때 오류가 발생할 수 있습니다. 이 문제는 데이터베이스 빌드 스크립트에도 적용됩니다.

참고:

이 문제를 해결하려면 종속 관계에 있는 개체 이름에서 스키마를 한정해야 합니다. 다음 예제에서 단순히 KeysTable 대신 [dbo].[KeysTable]을 참조하도록 문의 끝 부분을 변경하면 종속성이 제대로 확인됩니다.

CREATE VIEW [NewUser].[ViewReferencingScalarFunction] AS SELECT Column2, dbo.SimpleMultiplyParamByTwo(PK_Column) AS [Function] FROM KeysTable

자신을 사용자로 추가 시 오류 발생

sysadmin 역할의 멤버가 자신을 사용자로 추가하려고 하면 "로그인에 이미 다른 사용자 이름의 계정이 있습니다"라는 오류가 나타납니다. 이 오류는 사용자가 디자인 타임 유효성 검사 데이터베이스의 데이터베이스 소유자이며 해당 데이터베이스의 사용자 dbo이기 때문에 발생합니다. 따라서 자신을 다시 데이터베이스 사용자로 추가할 수 없습니다.

따옴표 붙은 식별자로 인해 프로젝트 다시 로드 문제가 발생할 수 있음

데이터베이스 속성에서 SET QUOTED_IDENTIFIER 확인란이 선택 취소되어 있는 경우 따옴표 붙은 식별자가 포함된 데이터베이스를 로드하거나 개체를 저장하면 오류가 나타납니다. 따옴표 붙은 식별자를 사용한 데이터베이스에서 데이터베이스 스키마를 가져오는 경우 이러한 상황이 발생할 수 있습니다.

참고:

이 문제를 해결하는 두 가지 옵션이 있습니다. 따옴표 대신 대괄호를 사용하도록 개체 정의를 수정할 수 있습니다. 예를 들어 "My Table"을 [My Table]로 변경할 수 있습니다. 또는 프로젝트 메뉴를 열고 DatabaseProject속성, 데이터베이스 속성 탭을 차례로 클릭한 다음 SET QUOTED_IDENTIFIER 확인란을 선택합니다.

데이터베이스의 내부 상태가 그 내용과 일치하지 않음

Database Edition에서 작업할 때 "데이터베이스 프로젝트의 내부 상태가 그 내용과 일치하지 않습니다. 문제를 해결하려면 프로젝트를 언로드한 후 다시 로드하십시오."라는 오류가 표시될 수 있습니다. 이 오류는 포함된 파일 목록을 유지 관리하는 프로젝트가 파일 상태와 더 이상 동기화되지 않음을 나타냅니다. 이 오류가 발생하는 가장 일반적인 이유는 데이터베이스 프로젝트가 열려 있지 않을 때 프로젝트 파일 중 하나가 디스크에서 삭제된 경우입니다. 데이터베이스 스키마를 가져올 때 문제가 발생한 경우에도 이 오류가 표시될 수 있습니다.

참고:

이 문제를 해결하려면 데이터베이스 프로젝트를 언로드한 다음 다시 로드해야 합니다. 다시 로드하려면 솔루션 탐색기에서 데이터베이스 프로젝트를 클릭합니다. 프로젝트 메뉴를 열고 프로젝트 언로드를 클릭합니다. 프로젝트가 언로드되면 프로젝트 메뉴를 열고 프로젝트 다시 로드를 클릭합니다.

전체 텍스트 검색

전체 텍스트 검색 및 디자인 타임 유효성 검사 데이터베이스

디자인 타임 유효성 검사 데이터베이스에서 전체 텍스트 검색을 해제하고 전체 텍스트 인덱싱된 개체가 있는 데이터베이스에서 스키마를 가져오면 개체를 가져오게 됩니다. 하지만 전체 텍스트 인덱스를 사용하는 모든 개체에 대해 오류 목록 창에 오류가 나타납니다. 개체를 가져온 후 디자인 타임 유효성 검사 데이터베이스에서 전체 텍스트 검색을 해제하는 경우에도 같은 오류가 표시됩니다.

참고:

이 문제를 해결하려면 디자인 타임 유효성 검사 데이터베이스에서 전체 텍스트 검색을 설정해야 합니다. 자세한 내용은 Microsoft 웹 사이트에서 “전체 텍스트 검색”을 참조하십시오.

전체 텍스트 인덱스 정의의 sp_fulltext_table 작업

전체 텍스트 인덱스 정의에는 CREATE 작업만 사용할 수 있습니다. ACTIVATE 등의 작업은 데이터베이스의 배포 후 스크립트에서 수행해야 합니다. 다른 작업을 추가하면 "기본 일괄 처리에는 최상위 DML(데이터 조작 언어) 문을 사용할 수 없습니다. 해당 문을 제거하고 작업을 다시 시도하십시오."라는 오류가 나타납니다.

참고:

이 문제를 해결하려면 sp_fulltext_table 문을 배포 후 스크립트 또는 배포 후 스크립트에 포함된 스크립트로 옮겨야 합니다. 배포 후 스크립트에 대한 자세한 내용은 방법: 배포 전 또는 배포 후 스크립트 지정을 참조하십시오.

SQLCLR 개체

Microsoft SQL Server 2005에서 SQLCLR 통합은 기본적으로 비활성화되어 있습니다. SQLCLR 개체가 있는 데이터베이스에서 스키마를 가져오는 경우 디자인 타임 유효성 검사 데이터베이스에서 SQLCLR 통합이 비활성화되어 있으면 오류 목록 창에 오류가 나타나지 않습니다. 그러나 이러한 개체를 실행하면 오류가 발생합니다.

참고:

이 문제를 해결하려면 Database Edition 또는 SQL Server Management Studio와 같은 도구에서 Transact-SQL 편집기를 실행하고 시스템 관리자로 서버에 연결해야 합니다. 그런 다음 쿼리 창에서 다음 명령을 실행합니다.

exec sp_configure 'clr enabled', 1
reconfigure

보류 중인 변경 내용 취소

스키마 뷰는 버전 제어 시스템의 보류 중인 변경 내용 취소 명령을 사용한 후 자동으로 새로 고쳐지지 않습니다. 예를 들어, 테이블 또는 열의 이름을 바꾼 후 해당 변경 내용을 되돌리면 "외부 파일이 변경되어 다시 동기화해야 합니다..."라는 메시지가 스키마 뷰에 나타납니다.

참고:

이 문제를 해결하려면 스키마 뷰 도구 모음에서 동기화를 클릭해야 합니다.

Windows NT 사용자 또는 그룹을 찾을 수 없음

데이터베이스 프로젝트에서 사용할 수 없는 로그인을 참조하면 "Windows NT 사용자 또는 그룹인 'DomainName\LoginName'을(를) 찾을 수 없습니다. 이름을 다시 확인하십시오."라는 오류가 나타납니다. 예를 들어 스키마를 가져온 데이터베이스와 다른 도메인에 있는 컴퓨터를 사용하는 경우 이 문제가 발생할 수 있습니다. 이 상황은 일반적으로 다른 위치에서 만든 데이터베이스 프로젝트로 집에서 작업할 때 발생합니다. 이러한 경우 데이터베이스 프로젝트를 빌드 또는 배포할 수 없습니다.

참고:

이 문제를 해결할 수 있는 방법은 없습니다. 데이터베이스 프로젝트는 참조된 로그인이 유효한 위치에서만 빌드 및 배포할 수 있습니다.

중복된 개체 이름 및 파일 제외

두 테이블의 이름이 모두 Orders인 경우와 같이 데이터베이스 프로젝트에서 개체 이름이 중복된 경우 오류 목록 창에 오류가 표시됩니다. 이러한 개체 중 하나의 정의가 들어 있는 파일을 제외하여 이 문제를 해결해도 오류 메시지가 즉시 사라지지 않습니다.

참고:

이 문제를 해결하려면 새로 고침을 클릭하거나, 개체 정의가 들어 있는 파일을 편집하고 개체의 이름을 바꾼 다음 파일을 저장합니다.

CREATE ASSEMBLY에서 파일 참조가 지원되지 않는 문제

명령문에 이진 코드를 포함하거나 어셈블리에 대한 파일 경로를 지정하여 T-SQL(Transact-SQL) CREATE ASSEMBLY 문에 CLR 어셈블리를 추가할 수 있습니다. 두 번째 방법은 Database Edition에서 지원되지 않습니다. 두 번째 구문을 사용하면 "CREATE ASSEMBLY 문은 FROM 절에서 이진 요소만 사용할 수 있습니다." 오류가 발생합니다.

참고:

이 문제를 해결할 수 있는 방법은 없습니다.

SQL Server 2000에서 SQL Server 2005로 변환 관련 문제

SQL Server 2000에서 SQL Server 2005로 데이터베이스 프로젝트를 변환하면 SQL Server 2005 개체의 상황에 맞는 메뉴가 스키마 뷰에 표시되지 않습니다.

참고:

이 문제를 해결하려면 SQL Server 2005로 변환한 후 데이터베이스 프로젝트를 닫고 다시 엽니다.

데이터베이스 및 서버 정규화 이름

Team Edition for Database Professionals에서 개체를 만들면 개체의 이름이 [스키마].[개체].[자식] 명명 규칙에 따라 지정됩니다. 다른 데이터베이스 또는 서버에 있는 개체를 참조하는 경우 해당 데이터베이스 및 서버의 이름을 [서버].[데이터베이스].[스키마].[개체].[자식]과 같은 방법으로 포함할 수 있습니다. 데이터베이스 또는 서버 정규화 이름을 필요로 하는 개체를 참조하는 저장 프로시저 또는 뷰를 만들면 경고가 표시됩니다.

참고:

경고를 해결하려면 크로스 데이터베이스 참조를 정의해야 합니다. 크로스 데이터베이스 참조에 대한 자세한 내용은 크로스 데이터베이스 참조 개요방법: 크로스 데이터베이스 참조 만들기를 참조하십시오.

중요:

프로젝트에 데이터베이스 또는 서버 정규화 이름에 대한 해결되지 않은 경고가 들어 있는 경우 데이터베이스 프로젝트 속성의 빌드 탭에서 경고를 오류로 처리 확인란이 선택되어 있으면 배포에 실패하게 됩니다. 이는 데이터베이스 또는 서버 정규화 이름으로 인해 경고가 발생하기 때문입니다. 데이터베이스 또는 서버 정규화 이름을 사용하는 경우 경고를 오류로 처리 확인란의 선택을 취소해야 합니다.

확장 속성 지원

이번 Database Edition 릴리스에서는 파일 그룹, 파일 이름 및 함수 제약 조건에 확장 속성이 지원되지 않습니다. 데이터베이스 스키마 또는 스크립트를 가져오는 경우 이러한 개체의 확장 속성이 생략됩니다.

또한 TinyInt, SmallInt, UniqueIdentifier 또는 비트 값이 저장된 확장 속성이 생략되고 ScriptsIgnoredOnImport.sql 파일에 배치됩니다.

참고:

이 문제를 해결하려면 배포 후 스크립트에서 확장 속성을 직접 만들어야 합니다. 자세한 내용은 방법: 배포 전 또는 배포 후 스크립트 지정을 참조하십시오.

데이터베이스 스키마 가져오기 성능

테스트 목록 편집기 창이나 테스트 뷰 창이 열려 있는 상태에서 데이터베이스 스키마를 가져오면 가져오기 작업을 완료하는 데 시간이 훨씬 더 오래 걸립니다. 이러한 속도 저하는 새 데이터베이스 프로젝트 마법사(데이터베이스 스키마 가져오기를 선택한 경우)와 데이터베이스 스키마 가져오기 작업에서 모두 발생합니다. 이 문제는 데이터베이스 스키마를 가져오기 전에 테스트 목록 편집기 및 테스트 뷰 창을 닫아도 발생합니다.

참고:

이 문제를 해결하려면 테스트 목록 편집기 및 테스트 뷰 창을 닫고 Visual Studio를 종료한 후 다시 시작한 다음 데이터베이스 스키마를 가져와야 합니다. 스키마 크기가 작은 경우에는 이러한 단계를 수행할 필요가 없습니다. AdventureWorks 샘플 데이터베이스의 경우 테스트 목록 편집기 창이 열려 있지 않으면 스키마 가져오기 작업에 27초가 걸리고, 테스트 목록 편집기 창이 열려 있으면 48초가 걸립니다.

빌드 오류 탐색

배포에 실패하면 생성된 빌드 스크립트를 업데이트하여 오류를 수정할 수 없습니다. 이 경우 해당 빌드 스크립트를 생성하는 데 사용된 소스 파일을 수정해야 합니다. 오류 목록 창에서 배포 오류를 두 번 클릭하면 오류를 발생시킨 줄이 표시된 상태로 편집기에 빌드 스크립트가 나타납니다.

참고:

이 문제를 해결하려면 빌드 스크립트를 보고 오류의 원인을 확인한 다음 데이터베이스 프로젝트에서 오류가 포함된 소스 파일을 수정해야 합니다. 예를 들어, 배포 후 스크립트인 Permissions.sql에 오류가 있을 경우 빌드 스크립트 대신 Permissions.sql을 수정해야 합니다.

데이터베이스 프로젝트 및 TRUSTWORTHY 설정

데이터베이스 프로젝트에 대해 TRUSTWORTHY 설정을 사용하거나 TRUSTWORTHY 설정을 사용하는 데이터베이스 프로젝트를 열려면 sysadmin 권한이 있어야 합니다.

참고:

이 문제를 해결하려면 TRUSTWORTHY 설정을 사용하지 않아야 하는 경우 데이터베이스 프로젝트에 대해 이 설정을 비활성화하도록 관리자에게 요청하십시오. TRUSTWORTHY 설정을 사용해야 하는 경우에는 데이터베이스 프로젝트 작업을 수행하는 모든 개발자에게 해당 데이터베이스에 대한 sysadmin 권한을 부여해야 합니다. 각 개발자가 격리된 개발 환경에서 작업하는 경우 각 개발자에게 데이터베이스의 전용 복사본이 있으므로 해당 데이터베이스의 sysadmin 역할에 안전하게 추가될 수 있습니다.

연결된 서버 및 스크립트 가져오기

데이터베이스 프로젝트에 여러 스크립트를 가져온 경우 데이터베이스 프로젝트를 배포할 때 오류가 표시될 수 있습니다. 이러한 상황은 연결된 서버 하나가 해당 스크립트 사이에 여러 번 정의된 경우 발생할 수 있습니다.

참고:

이 문제를 해결하려면 LinkedServers.sql 배포 전 스크립트에서 각 sp_addlinkedserver 호출 전에 다음 T-SQL을 추가하십시오.

IF NOT EXISTS (SELECT * FROM master.dbo.sysservers WHERE srvname = N'<serverName>')

데이터베이스 간 참조 사용 시 구문 오류

다른 데이터베이스에 있는 개체에 대한 참조가 포함된 개체 정의를 저장할 때 하나 이상의 구문 오류가 나타날 수 있습니다. 예를 들어 데이터베이스 프로젝트에 대해 참조를 추가하고 RefServer 및 RefDatabase라는 이름의 변수를 정의하고 해당 값을 할당하려는 경우 다음과 같이 뷰를 정의할 수 있습니다.

CREATE VIEW [dbo].[MyView]
AS
SELECT * FROM $(RefServer).$(RefDatabase).dbo.TableName

이 정의를 저장하려 할 때 구문이 잘못되었음을 나타내는 오류 메시지가 하나 이상 나타날 수 있습니다. 오류 메시지에 디자인 타임 유효성 검사 데이터베이스의 이름이 표시될 수 있는데, 이 이름이 혼동을 일으키는 것일 수 있습니다.

참고:

이 문제를 해결하려면 변수 이름을 괄호로 묶어야 합니다. 이 예제에서 문제를 해결하려면 다음과 같이 변경합니다.

CREATE VIEW [dbo].[MyView]
AS
SELECT * FROM [$(RefServer)].[$(RefDatabase)].dbo.TableName

확장 속성이 있는 XML 인덱스

하나 이상의 확장 속성에 대한 정의가 들어 있는 XML 인덱스에 대해 개체 정의를 저장하는 경우 하나 이상의 구문 오류가 나타날 수 있습니다. 이러한 오류가 발생하는 이유는 XML 인덱스가 삭제되어 다시 만들어질 때 SQL Server 2005에서 확장된 속성을 제거하지 않기 때문입니다. 이러한 상황이 발생하면 "TSD4001: 속성을 추가할 수 없습니다. 'ExtendedPropertyName' 속성이 'XMLIndexName'에 이미 존재합니다. (SQL 오류 = 15233)."라는 오류가 표시될 수 있습니다.

참고:

이 문제를 해결하려면 확장된 속성 또는 속성 집합의 정의를 배포 후 스크립트로 이동하고, 정의 바로 앞에 다음 문을 추가해야 합니다.

IF NOT EXISTS (SELECT * FROM fn_listextendedproperty('ExtendedPropertyName', 'SCHEMA', N'SchemaName', 'TABLE', N'TableName', 'INDEX', N'XMLIndexName')

Team Foundation Build의 권한 문제

Team Foundation Build를 사용하여 데이터베이스 프로젝트를 빌드 및 배포할 때 권한 오류가 발생할 수 있습니다. 기본적으로 Team Foundation Build의 서비스 계정으로 네트워크 서비스 계정이 사용됩니다. 네트워크 서비스 계정에는 빌드 컴퓨터의 SQL Server 인스턴스에 필요한 권한이 없습니다.

참고:

이 문제를 해결하려면 네트워크 서비스 계정에 권한을 추가로 부여하거나 Team Foundation Build가 실행되는 서비스 계정을 필요한 권한이 있는 계정으로 변경해야 합니다. 자세한 내용은 Database Edition의 필수 권한을 참조하십시오.

빌드 도중 나타나는 예기치 않은 토큰 경고

MSBuild를 사용하여 데이터베이스 프로젝트를 빌드하는 경우 예기치 않은 토큰 경고가 나타날 수 있습니다. DefaultDataPath를 재정의하고 뒤에 백슬래시 두 개를 지정하지 않으면 \" 시퀀스가 큰따옴표의 이스케이프로 해석되어 빌드 경고가 나타나며 생성된 빌드 스크립트가 불완전할 수 있습니다.

참고:

이 문제를 해결하려면 경로의 끝에 이중 백슬래시를 지정해야 합니다. 자세한 내용은 데이터베이스 빌드 및 배포 개요를 참조하십시오.

x64 기반 컴퓨터에서 원격 데이터베이스 서버로 명령줄 배포 시 실패

데이터베이스 프로젝트에 대한 대상 연결을 명시적으로 지정하지 않으면 파일 그룹 및 파일 위치 값이 로컬 x64 기반 컴퓨터의 디렉터리 구조에 따라 설정됩니다. 원격 데이터베이스 서버에서도 x64 운영 체제 및 32비트 버전의 SQL Server를 실행하지 않으면 배포에 실패하게 됩니다.

참고:

이 문제를 해결하려면 데이터베이스를 배포하기 전에 데이터베이스 프로젝트 속성에 대상 데이터베이스 연결을 명시적으로 지정해야 합니다. 자세한 내용은 방법: 빌드 및 배포할 데이터베이스 프로젝트 구성을 참조하십시오.

참고 항목

작업

방법: 데이터베이스 개체 수정

방법: 데이터 차이 보기

개념

Database Edition의 용어 개요

기타 리소스

데이터베이스 개체 이름 바꾸기