XML 서식 파일 이해
MicrosoftMicrosoftSQL Server 2005 이상 버전은 XML 서식 파일을 작성하기 위한 구문을 정의하는 XML 스키마를 제공합니다. XML 서식 파일은 XSDL(XML Schema Definition Language)에 정의되어 있는 이 스키마에 충실해야 합니다. XML 서식 파일은 SQL Server 도구를 SQL Server Native Client와 함께 설치한 경우에만 지원됩니다.
[!참고]
SQL Server 2005 이상 버전은 두 가지 유형의 서식 파일을 지원합니다. 반면 MicrosoftSQL Server 2000 이전 버전은 한 가지 유형의 서식 파일만 지원합니다. XML 서식 파일에서 이전 유형을 구분하기 위해 기존 유형의 서식 파일을 비 XML 서식 파일이라고 합니다.
XML 서식 파일을 사용하여 데이터를 대량으로 테이블이나 파티션이 없는 뷰로 가져오고 내보낼 수 있습니다. XML 서식 파일은 SQL Server 2000 이전 버전(계속 지원됨)에서 지원되는 비 XML 서식 파일을 대체합니다. XML 서식 파일은 비 XML 서식 파일보다 더 융통성 있고 강력합니다. XML 서식 파일은 이해하기 쉽고 만들기 쉽습니다. 또한 사람이 읽을 수 있는 형태이기 때문에 대량 작업 중에 데이터가 해석되는 방식을 쉽게 이해할 수 있습니다. XML 인코딩은 데이터 파일의 데이터 형식과 데이터 요소뿐만 아니라 데이터 요소와 테이블 열 간의 매핑도 명확하게 설명합니다.
XML 서식 파일은 이전 버전과의 호환성을 유지하면서 향상될 수 있습니다. 또한 XML 인코딩은 명확하기 때문에 지정된 데이터 파일에 대해 다수의 서식 파일을 쉽게 만들 수 있습니다. 데이터 필드 전체나 일부를 서로 다른 테이블이나 뷰에 매핑해야 하는 경우 이 기능이 유용합니다.
bcp 명령을 사용하면 테이블에 대한 XML 서식 파일을 자동으로 만들 수 있습니다. 자세한 내용은 bcp 유틸리티를 참조하십시오.
XML 서식 파일의 구조
비 XML 서식 파일과 마찬가지로 XML 서식 파일도 데이터 파일의 데이터 필드 형식과 구조를 정의하며 해당 데이터 필드를 단일 대상 테이블의 열에 매핑합니다.
XML 서식 파일에는 두 개의 주요 구성 요소 <RECORD>와 <ROW>가 있습니다.
<RECORD>는 데이터 파일에 저장되어 있는 데이터를 설명합니다.
각 <RECORD> 요소는 하나 이상의 <FIELD> 요소 집합을 포함합니다. 이러한 요소는 데이터 파일의 필드에 해당합니다. 기본 구문은 다음과 같습니다.
<RECORD>
<FIELD .../> [ ...n ]
</RECORD>
각 <FIELD> 요소는 특정 데이터 필드의 내용을 설명합니다. 필드 하나는 테이블의 열 하나에만 매핑할 수 있지만 모든 필드를 열에 매핑해야 하는 것은 아닙니다.
데이터 파일의 필드는 고정/가변 길이이거나 종료된 문자일 수 있습니다. 필드 값은 문자(1바이트 표현 사용), 와이드 문자(유니코드 2바이트 표현 사용), 네이티브 데이터베이스 형식 또는 파일 이름으로 표현될 수 있습니다. 필드 값이 파일 이름으로 표현되는 경우 파일 이름은 대상 테이블의 BLOB 열 값이 포함된 파일을 가리킵니다.
<ROW>는 파일의 데이터를 SQL Server 테이블로 가져올 때 데이터 파일의 데이터 행을 구성하는 방법을 설명합니다.
<ROW> 요소에는 <COLUMN> 열 집합이 포함됩니다. 이러한 요소는 테이블 열에 해당합니다. 기본 구문은 다음과 같습니다.
<ROW>
<COLUMN .../> [ ...n ]
</ROW>
각 <COLUMN> 요소는 데이터 파일의 필드 하나에만 매핑할 수 있습니다. <ROW> 요소에서 <COLUMN> 요소의 순서에 따라 대량 작업에서 반환되는 순서가 정의됩니다. XML 형식 파일은 각 <COLUMN> 요소에 대량 가져오기 작업의 대상 테이블에 있는 열과 관계가 없는 로컬 이름을 지정합니다.
추가 항목
XML 서식 파일의 스키마 구문
XML 서식 파일의 XML 스키마 요소와 특성에 대한 요약을 포함합니다.예제 XML 서식 파일
Adventure Works 예를 비롯한 다양한 경우에 XML 서식 파일을 사용하는 방법에 대한 정보를 포함합니다.