2013-10-15 3 views
1

우리는 데이터베이스 스키마의 버전을 관리하기 위해 TFS (서비스가 아닌 서버)를 사용하고 있습니다. 주기적으로 TFS는 빌드를 생성하여 드롭 폴더에 저장합니다.데이터베이스 스키마 diff 스크립트 자동 생성

에 따라 모범 사례 (http://martinfowler.com/articles/evodb.html)는, 권장, 그리고 무엇보다도, 우리 자신의 경험 (고통)을 기반으로, 우리는 자동으로 체크인 변화와 매일/매주 DIFF 스크립트를 생성 할 수 있습니다.

있습니다 이 일을하는 데 도움이되는 많은 도구 (RedGate, Visual Studio, Open Sourece)와 나는 모두 시도했습니다. 그러나 모든 경우에 수동으로 수행해야합니다.

자동) (무인 그것을 할 수있는 방법이 있나요)

우리는 자주 우리가 할 수있는 ...하지만 수동입니다 그것은 자주가 필요합니다으로되지 않기 때문에 같은거야? 빌드의 두 배포 스크립트 사이에서 수행 할 수 있습니까? 아니면 2 개의 데이터베이스 사이에서 그것을합니까? 데이터를 자동으로 비교할 수도 있습니까?

답변

2

예, 차이 스크립트를 자동으로 생성 할 수 있습니다. 우리 회사에서 그렇게했습니다.

Visual Studio의 vsdbcmd 명령 줄 도구를 사용하여 빌드에서 배포 스크립트를 생성하고 나중에 해당 스크립트를 사용하여 테스트 서버에 배포합니다. 우리는 Visual Studio 2010을 사용합니다.

+0

기본 데이터는 어떻습니까? 우편 번호, 필드 설명/번역 등과 같은 기본 데이터를 어떻게 관리합니까? – Alex

+0

우리는 스크립트를 사용합니다. 버전간에 수행해야하는 모든 종류의 데이터 변환 또는 이전과 동일합니다. 업그레이드 프로세스는 먼저 스키마를 비교하기 전에 수동 스크립트를 실행합니다. – Szymon

관련 문제