다음을 통해 공유


데이터베이스 프로젝트 설정 개요

업데이트: 2007년 11월

데이터베이스 프로젝트 설정은 데이터베이스 및 빌드 구성의 여러 측면을 제어합니다. 이러한 설정은 다음과 같은 범주로 구성되어 있습니다.

  • 프로젝트 설정

  • 빌드 이벤트

  • 데이터베이스 속성

  • 파일 그룹

  • 참조

  • 빌드

  • 변수

프로젝트 설정, 빌드 이벤트 및 데이터베이스 속성은 데이터베이스 프로젝트에 저장되고 버전 제어를 통해 공유됩니다.

참고:

사용자별 설정은 .dbproj.user 파일에 저장됩니다. 프로젝트별 설정은 .dbproj 파일에 저장됩니다.

프로젝트 설정

이러한 설정은 이 데이터베이스 프로젝트의 모든 구성에 적용됩니다.

필드

기본값

설명

프로젝트 버전

데이터베이스 프로젝트를 만들 때 지정한 SQL Server 버전

이 데이터베이스 프로젝트에서 대상으로 하는 Microsoft SQL Server의 버전을 지정합니다.

기본 스키마

dbo

데이터베이스에 추가되는 개체가 생성되는 기본 스키마를 지정합니다. 하나 이상의 개체 정의를 변경하는 경우 이 설정을 재정의할 수 있습니다.

파일 이름에 스키마 포함

dbo.Products.table.sql과 같이 파일 이름에 스키마가 접두사로 포함되는지 아니면 파일 이름이 단순히 ObjectName.ObjectType.sql인지 여부를 지정합니다.

전체 텍스트 검색 사용

아니요

이 데이터베이스 프로젝트에 전체 텍스트 검색을 사용할지 여부를 지정합니다.

중요:

이 확인란을 선택하는 경우 데이터베이스를 단일 사용자 모드로 배포하는 확인란을 함께 선택할 수 없습니다.

SQLCLR 통합 사용

아니요

이 데이터베이스 프로젝트와 연결된 데이터베이스에 SQLCLR 통합을 사용할지 여부를 지정합니다.

기본 데이터 정렬

SQL_Latin1_General_CP1_CS_AS

이 데이터베이스 프로젝트의 데이터를 정렬하고 비교하는 데 사용되는 기본 규칙을 지정합니다. 개체 정의 내에서 기본 데이터 정렬을 재정의할 수 있습니다.

참고:

기본 데이터 정렬은 모든 플랫폼에서 동일합니다. 기본값이 현재 로캘과 일치하도록 변경되지 않으므로 기본 데이터 정렬을 해당 로캘에 맞는 데이터 정렬로 수동으로 설정해야 합니다.

참고:

프로젝트의 데이터 정렬을 변경할 경우 기본 데이터 정렬을 변경하기 위해 프로젝트를 언로드한 다음 다시 로드해야 하므로 변경 확인 대화 상자가 나타납니다. 프로젝트를 언로드한 다음 다시 로드할지를 묻는 메시지가 표시되면 예를 클릭합니다.

빌드 이벤트 설정

이러한 설정을 사용하여 빌드 작업이 시작되기 전에 실행할 명령줄과 빌드 작업이 완료된 후에 실행할 명령줄을 지정할 수 있습니다.

필드

기본값

설명

빌드 전 이벤트 명령줄

없음

프로젝트가 빌드되기 전에 실행할 명령줄을 지정합니다. 명령줄을 수정하려면 빌드 전 편집을 클릭합니다.

빌드 후 이벤트 명령줄

없음

프로젝트가 빌드된 후에 실행할 명령줄을 지정합니다. 명령줄을 수정하려면 빌드 후 편집을 클릭합니다.

빌드 후 이벤트 실행

빌드가 성공한 경우

빌드 후 명령줄이 항상 실행되어야 하는지, 빌드 작업이 성공한 경우에만 실행되어야 하는지, 아니면 빌드 작업에서 프로젝트 출력(빌드 스크립트)을 업데이트한 경우에만 실행되어야 하는지를 지정합니다.

명령줄을 편집하는 방법에 대한 자세한 내용은 방법: 빌드 전 또는 빌드 후 명령줄 지정빌드 전 이벤트/빌드 후 이벤트 명령줄 대화 상자(Database Edition)를 참조하십시오.

데이터베이스 속성

이 페이지를 사용하여 데이터베이스 속성을 구성할 수 있습니다. 모든 속성은 SQL Server 데이터베이스의 속성과 일치합니다. 이러한 속성에 대한 자세한 내용은 데이터베이스 속성(옵션 탭)을 참조하십시오.

파일 그룹

이 페이지를 사용하여 데이터베이스 프로젝트의 파일 그룹, 파일 및 로그 파일에 대한 정의를 수정할 수 있습니다. 자세한 내용은 파일 및 파일 그룹 개요를 참조하십시오. 이러한 정의는 대개 변수 탭에 정의된 변수를 참조합니다.

참조

이 페이지를 사용하여 서버를 정의하고 데이터베이스 간 참조에 관련된 데이터베이스 변수를 정의할 수 있습니다. 또한 각 변수의 값을 지정할 수 있습니다. 자세한 내용은 크로스 데이터베이스 참조 개요를 참조하십시오.

빌드 설정

이러한 설정을 사용하여 빌드 스크립트 및 대상 데이터베이스에 영향을 줄 수 있습니다. 이러한 설정은 지정하는 구성과 플랫폼에만 해당되며 일반적으로 사용자마다 다릅니다.

필드

기본값

설명

빌드 출력 경로

.\sql\

데이터베이스 프로젝트를 빌드하거나 배포할 때 빌드 스크립트가 생성될 위치를 지정합니다. 상대 경로를 지정하는 경우 데이터베이스 프로젝트 경로에 상대적입니다. 해당 경로가 없으면 생성됩니다.

빌드 출력 파일 이름 자동 생성

선택하지 않음

프로젝트 이름, 대상 데이터베이스의 인스턴스 이름 및 대상 데이터베이스의 이름을 기반으로 파일 이름을 자동으로 생성합니다.

빌드 출력 파일 이름

DatabaseProjectName.sql

데이터베이스 프로젝트를 빌드할 때 생성되는 스크립트에 부여할 이름을 지정합니다. 빌드 출력 파일 이름 자동 생성 확인란을 선택하면 자동으로 생성되는 파일 이름이 이 필드에서 지정하는 값을 덮어씁니다.

대상 연결

비어 있음

선택한 빌드 구성에 대해 대상으로 할 데이터베이스 서버의 연결 정보를 지정합니다. 대상 연결을 지정하지 않으면 디자인 타임 유효성 검사 데이터베이스로 지정한 SQL Server 2005 인스턴스가 사용됩니다.

대상 데이터베이스 이름

DatabaseProjectName

대상 연결 필드에 지정하는 연결을 설정할 때 생성되거나 업데이트될 데이터베이스의 이름을 지정합니다.

대상 데이터베이스 파일의 기본 위치

기본 위치는 대상 서버에서 검색합니다.

대상 컴퓨터에서 데이터베이스 파일이 생성될 기본 위치를 지정합니다. 새로 고침을 클릭하면 해당 서버의 기본 위치를 검색할 수 있습니다.

배포 데이터 정렬 기본값

비어 있음

대상 데이터베이스 데이터 정렬이 데이터베이스 프로젝트 데이터 정렬과 일치하지 않는 경우 배포하는 동안 사용할 데이터 정렬을 지정합니다. 서버의 데이터 정렬 사용을 클릭하면 대상 데이터베이스와 일치하도록 데이터베이스 프로젝트가 변경됩니다. 데이터베이스 프로젝트의 데이터 정렬 사용을 클릭하면 데이터베이스 프로젝트와 일치하도록 대상 데이터베이스가 업데이트됩니다. 데이터 정렬 스크립팅 안 함을 클릭하면 데이터 정렬이 변경되지 않지만 배포 작업이 실패할 수 있습니다.

항상 데이터베이스 다시 만들기

아니요

증분 배포를 수행하는 대신 데이터베이스를 삭제하고 다시 만들지 여부를 지정합니다. 예를 들어, 데이터베이스 전체 배포에 대해 단위 테스트를 실행하려는 경우에 이 확인란을 선택할 수 있습니다. 이 확인란의 선택을 취소하면 기존 데이터베이스가 삭제된 다음 다시 생성되지 않고 업데이트됩니다.

데이터가 손실되면 증분 배포 차단

업데이트로 인해 데이터가 손실될 경우 배포 작업을 중지할지 여부를 지정합니다. 이 확인란을 선택하면 varchar(50) 열을 varchar(30) 열로 변경하는 것처럼 데이터 손실을 초래하는 변경 내용이 있을 경우 오류와 함께 배포 작업이 중지되어 데이터가 손실되지 않습니다.

참고:

데이터가 손실될 수 있는 테이블에 데이터가 들어 있는 경우에만 배포가 차단됩니다. 손실될 데이터가 없는 경우에는 배포가 차단되지 않습니다.

경고를 오류로 처리

아니요

경고 발생 시 빌드 및 배포 작업을 취소해야 하는지 여부를 지정합니다. 이 확인란의 선택을 취소하면 경고가 나타나지만 빌드 및 배포 작업은 계속됩니다.

이 설정은 사용자가 아닌 프로젝트 관련 설정이며 .dbproj 파일에 저장됩니다.

배포하기 전에 데이터베이스 백업

아니요

배포하기 전에 데이터베이스를 백업해야 하는지 여부를 지정합니다. 이 확인란의 선택을 취소하면 백업이 자동으로 수행되지 않습니다. 이 확인란을 선택하면 배포 전 스크립트에 데이터베이스 백업 문이 추가됩니다.

참고:

백업 작업에는 오랜 시간이 걸릴 수 있습니다. 공유 테스트 서버, 스테이징 서버 또는 프로덕션 서버가 아닌 격리된 개발 환경에 빌드하고 배포하는 경우 빌드 및 배포 작업의 일부로 데이터베이스를 백업하지 않을 수 있습니다.

중요:

프로덕션 서버에 배포하기 전에는 항상 데이터베이스를 백업해야 합니다. 빌드 및 배포 프로세스의 일부로 데이터베이스를 자동 백업하지 않는 경우 변경 내용을 배포하기 전에 데이터베이스를 수동으로 백업해야 합니다.

단일 사용자 모드에서 배포 스크립트 실행

아니요

배포하는 동안 데이터베이스를 단일 사용자 모드로 설정해야 하는지 여부를 지정합니다. 공유 데이터베이스 서버에 배포하는 경우 데이터베이스를 단일 사용자 모드로 설정하여 데이터베이스 변경 내용을 배포할 때 다른 사용자가 데이터베이스를 변경하지 못하게 해야 합니다.

중요:

데이터베이스가 단일 사용자 모드인 경우 데이터베이스에 대한 변경 내용을 배포하는 즉시 데이터베이스에 대한 다른 기존 연결이 모두 끊어집니다. 데이터베이스가 단일 사용자 모드로 전환되면 보류 중인 트랜잭션이 즉시 종료되도록 ROLLBACK IMMEDIATE 절이 지정되어 있습니다.

참고:

데이터베이스 프로젝트 속성의 프로젝트 설정 탭에서 전체 텍스트 검색을 활성화한 경우에는 이 옵션을 사용할 수 없습니다.

열을 추가하거나 열 이름을 바꿀 때 '스마트' 열 이름 일치 수행

아니요

열의 이름을 바꿀 시기를 결정하기 위해 업데이트를 배포할 때 삭제 및 추가 작업을 수행하는 대신 발견적 접근 방법을 적용할지 여부를 지정합니다. 발견적 접근 방법은 열 속성과 소스 및 대상 열의 이름을 기반으로 합니다. 항상 데이터베이스 다시 만들기 확인란을 선택한 경우에는 데이터베이스가 삭제된 다음 다시 생성되므로 이 확인란이 아무런 영향을 주지 않습니다.

데이터베이스 프로젝트에 없지만 대상 데이터베이스에 있는 개체에 대해 DROP 문 생성

아니요

데이터베이스 프로젝트에 없지만 대상 데이터베이스에 있는 개체를 배포 스크립트의 일부로 삭제해야 하는지 여부를 지정합니다. 프로젝트의 일부 파일을 빌드 스크립트에서 일시적으로 제거하기 위해 제외하는 경우 해당 개체의 기존 버전을 대상 데이터베이스에 둘 수 있습니다. 항상 데이터베이스 다시 만들기 확인란을 선택한 경우에는 데이터베이스가 삭제되므로 이 확인란이 아무런 영향을 주지 않습니다.

ALTER ASSEMBLY 문을 사용하여 CLR 형식 업데이트 안 함

아니요

변경 내용을 배포할 때 ALTER ASSEMBLY 문을 사용하여 CLR(공용 언어 런타임) 형식을 업데이트할지 아니면 CLR 형식을 인스턴스화하는 개체를 삭제한 다음 다시 만들지 여부를 지정합니다.

경고 표시 안 함

비어 있음

표시하지 않을 경고 번호를 쉼표나 세미콜론으로 구분하여 입력합니다. 표시하지 않을 경고는 경고를 오류로 처리 확인란을 선택해도 오류 목록 창에 나타나지 않으며 빌드에도 영향을 주지 않습니다.

변수

이 페이지를 사용하여 파일 그룹 및 파일에 대한 정의나 배포 전/후 스크립트에 사용할 수 있는 변수와 해당 값을 정의할 수 있습니다. 이러한 설정은 지정하는 구성 및 플랫폼에 따라 다릅니다.

필드

기본값

설명

변수 이름

비어 있음

파일 그룹 또는 파일의 정의나 배포 전/후 스크립트에 사용할 수 있는 변수의 이름입니다. 스크립트나 개체 정의에서 변수 이름을 참조하는 경우 [$(VariableName)] 구문을 사용해야 합니다.

변수 값

비어 있음

현재 구성 및 플랫폼의 변수에 연결할 값입니다.

참고 항목

작업

방법: 데이터베이스 빌드 스크립트 준비

방법: 새 데이터베이스 또는 기존 데이터베이스로 변경 내용 배포

연습: 새 버전 제어 데이터베이스 만들기 및 배포

연습: 기존 버전 제어 데이터베이스로 변경 내용 배포

방법: 하나 이상의 경고 형식을 표시하지 않도록 지정

방법: 데이터베이스 프로젝트의 변수 정의

개념

데이터베이스 빌드 및 배포 개요

Database Edition의 용어 개요

기타 리소스

방법: 빌드 및 배포할 데이터베이스 프로젝트 구성