하나 이상의 테이블에 있는 데이터를 참조 데이터베이스에 있는 데이터와 비교 및 동기화
원본 데이터베이스 및 대상 데이터베이스의 데이터를 비교하고 비교할 테이블을 지정할 수 있습니다. 데이터를 검토하여 동기화할 변경 내용을 결정할 수 있습니다. 그런 후 대상을 업데이트해서 데이터베이스를 동기화하거나 업데이트 스크립트를 Transact-SQL 편집기 또는 파일로 내보낼 수 있습니다.
예를 들어 준비 서버를 프로덕션 데이터의 복사본으로 업데이트하기 위해 데이터베이스를 동기화할 수 있습니다. 하나 이상의 테이블을 동기화하여 다른 데이터베이스의 참조 데이터로 채울 수도 있습니다. 또한 테스트를 실행하기 전과 후에 추가 검증 형식으로 데이터를 비교할 수 있습니다.
두 데이터베이스의 데이터를 비교할 수는 있지만 데이터베이스 프로젝트 파일 또는 .dacpac는 데이터가 포함되지 않으므로 비교하도록 지정할 수 없습니다.
이 섹션에는 다음 영역에 대한 정보가 수록되어 있습니다.
요구 사항
테이블 또는 뷰의 데이터를 비교할 때 원본 데이터베이스의 테이블 또는 뷰는 대상 데이터베이스의 테이블 또는 뷰와 일부 특성을 공유해야 합니다. 다음 조건을 충족하지 않는 테이블 및 뷰는 새 데이터 비교 마법사의 두 번째 페이지에 표시되지 않습니다.
테이블의 데이터 형식이 호환되는 열 이름이 일치해야 합니다.
테이블, 뷰 및 소유자의 이름은 대/소문자를 구분합니다.
테이블에는 동일한 기본 키, 고유 인덱스 또는 고유 제약 조건이 있어야 합니다.
뷰에는 동일한 고유의 클러스터형 인덱스가 있어야 합니다.
테이블의 이름이 동일한 경우에만 뷰와 테이블을 비교할 수 있습니다.
각 개체에는 해당되는 다른 개체를 결정하는 키 또는 인덱스가 있습니다. 각 테이블 또는 뷰에는 둘 이상의 기본 키, 고유 인덱스 또는 고유 제약 조건이 있을 수 있습니다. 따라서 사용할 키, 인덱스 또는 제약 조건을 지정하고자 할 수 있습니다.
일반 작업
이 섹션에서는 이 시나리오를 지원하는 일반적인 작업에 대한 설명을 찾을 수 있습니다.
데이터 비교 방법을 제어하는 옵션 설정: 데이터를 비교할 때 ID 열을 안전하게 무시하고 트리거를 사용하지 않도록 설정하고 외래 키를 사용하지 않도록 설정할 수 있습니다. 또한 업데이트 스크립트에서 기본 키, 인덱스 및 고유 제약 조건을 삭제할 수도 있습니다.
테이블의 데이터를 비교하고 필요에 따라 원본과 일치하도록 대상을 업데이트: 비교 및 실행할 원본 및 대상 데이터베이스를 지정한 후 데이터 비교 창에서 결과를 확인합니다. 차이점에 대한 세부 정보뿐만 아니라 데이터 동기화에 사용되는 업데이트 스크립트도 확인합니다. 두 데이터베이스 간의 차이점을 식별한 후에는 각 차이점에 대한 작업을 지정합니다. 그런 다음, 대상을 업데이트하거나 업데이트 스크립트를 Transact-SQL 편집기 또는 파일로 내보냅니다. 변경 내용을 적용하기 전에 사용자 또는 다른 사람이 검토할 수 있도록 스크립트를 내보내려 할 수 있습니다.
비교 결과 파악
다음 테이블은 데이터 비교 창에서 5개 열을 설명합니다.
Column | 주의 |
---|---|
Object | 업데이트를 작성하거나 업데이트 스크립트를 내보낼 때 대상을 동기화해야 하는지 여부를 나타내는 테이블 또는 뷰의 이름과 확인란을 표시합니다. 데이터가 없는 테이블이나 뷰에는 확인란을 사용할 수 없습니다. |
다른 레코드 | 원본과 키가 같지만 동일한 데이터가 아닌 대상의 레코드 수를 표시합니다. 업데이트를 기록하거나 업데이트 스크립트를 내보낼 때, 업데이트를 위해 표시된 레코드 수는 괄호로 묶입니다. |
원본에만 있음 | 대상에서 발생하지 않는 원본의 레코드 수를 표시합니다. 업데이트를 기록하거나 업데이트 스크립트를 내보낼 때, 추가 사항을 위해 표시된 레코드 수는 괄호로 묶입니다. |
대상에만 있음 | 원본에서 발생하지 않는 대상의 레코드 수를 표시합니다. 업데이트를 기록하거나 업데이트 스크립트를 내보낼 때, 삭제 사항을 위해 표시된 레코드 수는 괄호로 묶입니다. |
동일한 레코드 | 원본과 동일한 키와 동일한 데이터가 있는 대상의 레코드 수를 표시합니다. 이러한 레코드는 업데이트를 기록하거나 업데이트 스크립트를 내보낼 때 업데이트되지 않습니다. |
테이블 및 보기 세부 정보
데이터 비교 창에서 테이블이나 보기를 클릭하면 세부 정보 창에 테이블 또는 뷰에 포함된 모든 행이 표시됩니다. 세부 정보 창의 각 탭에는 다른 범주가 표시됩니다(다른 레코드, 원본 한정, 대상 및 동일한 레코드 한정). 각 행에 대해 해당 확인란을 선택하거나 선택 취소하여 업데이트 스크립트의 변경 내용을 포함할지 여부를 나타낼 수 있습니다.