비 XML 서식 파일(SQL Server)Non-XML Format Files (SQL Server)

SQL Server 2017SQL Server 2017에서는 비 XML 서식 파일XML 서식 파일의 두 가지 서식 파일 유형을 대량으로 내보내고 가져올 수 있습니다.In SQL Server 2017SQL Server 2017, two types of format files are supported for bulk exporting and importing: non-XML format files and XML format files.

항목 내용In this Topic:

비 XML 서식 파일의 이점 Benefits of Non-XML Format Files

  • bcp 명령에 format 옵션을 지정하여 비 XML 서식 파일을 자동으로 만들 수 있습니다.You can create a non-XML format file automatically by specifying the format option in a bcp command.

  • bcp 명령에 기존 서식 파일을 지정할 때 명령은 서식 파일에 기록되어 있는 값을 사용하며 파일 저장 형식, 접두사 길이, 필드 길이 또는 필드 종결자 입력을 요구하지 않습니다.When you specify an existing format file in a bcp command, the command uses the values that are recorded in the format file and does not prompt you for the file storage type, prefix length, field length, or field terminator.

  • 문자 데이터 또는 네이티브 데이터와 같은 특정 데이터 형식의 서식 파일을 만들 수 있습니다.You can create a format file for a particular data type such as character data or native data.

    각 데이터 필드에 대해 대화형으로 지정된 특성을 포함하는 비 XML 서식 파일을 만들 수 있습니다.You can create a non-XML format file that contains interactively specified attributes for each data field. 자세한 내용은 bcp를 사용하여 데이터 형식을 호환 가능하도록 지정(SQL Server)을 참조하세요.For more information, see Specify Data Formats for Compatibility when Using bcp (SQL Server).

참고

XML 서식 파일은 비 XML 서식 파일에 비해 몇 가지 이점이 있습니다.XML format files offer several advantages over non-XML format files. 자세한 내용은 XML 서식 파일(SQL Server)의 두 가지 서식 파일 유형을 대량으로 내보내고 가져올 수 있습니다.For more information, see XML Format Files (SQL Server).

비 XML 서식 파일의 구조 Structure of Non-XML Format Files

비 XML 서식 파일은 특정 구조의 텍스트 파일입니다.A non-XML format file is a text file that has a specific structure. 비 XML 서식 파일은 모든 테이블 열의 필드 종결자, 필드 길이, 접두사 길이 및 파일 저장 유형에 대한 정보를 포함합니다.The non-XML format file contains information about the file storage type, prefix length, field length, and field terminator of every table column.

다음 그림에서는 예제 비 XML 서식 파일에 대한 서식 파일 필드를 보여 줍니다.The following illustration illustrates the format-file fields for a sample non-XML format file.

비 XML 서식 파일 필드 식별Identifies the fields of a non-XML format file

버전열 개수 필드는 한 번만 생성해야 합니다.The Version and Number of columns fields occur one time only. 다음 표에서는 해당 의미에 대해 설명합니다.Their meanings are describes in the following table.

서식 파일 필드Format-file field 설명Description
버전Version bcp 유틸리티의 버전 번호:Version number of the bcp utility:

9.0 = SQL Server 2005SQL Server 20059.0 = SQL Server 2005SQL Server 2005

10.0 = SQL Server 2008SQL Server 200810.0 = SQL Server 2008SQL Server 2008

11.0 = SQL Server 2012SQL Server 201211.0 = SQL Server 2012SQL Server 2012

12.0 = SQL Server 2014SQL Server 201412.0 = SQL Server 2014SQL Server 2014

버전 번호는 bcp를 위한 것이며 Transact-SQLTransact-SQL은 인식하지 않습니다.The version number is recognized only by bcp, not by Transact-SQLTransact-SQL.



참고: 서식 파일을 읽는 데 사용되는 bcp 유틸리티(Bcp.exe)의 버전은 서식 파일을 만드는 데 사용되는 버전 이상이어야 합니다.Note: The version of the bcp utility (Bcp.exe) used to read a format file must be the same as, or a later version than was used to create the format file. 예를 들어 SQL Server 2012SQL Server 2012bcpSQL Server 2008SQL Server 2008bcp에서 생성된 버전 10.0 서식 파일을 읽을 수 있지만 SQL Server 2008SQL Server 2008bcpSQL Server 2014SQL Server 2014bcp에서 생성된 버전 12.0 서식 파일을 읽을 수 없습니다.For example, SQL Server 2012SQL Server 2012bcp can read a version 10.0 format file, which is generated by SQL Server 2008SQL Server 2008bcp, but SQL Server 2008SQL Server 2008bcp cannot read a version 12.0 format file, which is generated by SQL Server 2014SQL Server 2014bcp.
열 개수Number of columns 데이터 파일의 필드 개수.Number of fields in the data file. 이 개수는 모든 행에서 같아야 합니다.This number must be the same in all rows.

다른 서식 파일 필드에서는 대량으로 가져오거나 내보낸 데이터 필드에 대해 설명합니다.The other format-file fields describe the data fields that are to be bulk imported or exported. 각 데이터 필드를 사용하려면 서식 파일에 있는 별도의 행이 필요합니다.Each data field requires a separate row in the format file. 모든 서식 파일 행에는 다음 표에 설명되어 있는 서식 파일 필드에 대한 값이 포함되어 있습니다.Every format-file row contains values for the format-file fields that are described in the following table.

서식 파일 필드Format-file field 설명Description
호스트 파일 필드 순서Host file field order 데이터 파일에서 각 필드의 위치를 나타내는 번호.A number that indicates the position of each field in the data file. 예를 들어 행의 첫 번째 필드 번호는 1입니다.The first field in the row is 1, and so on.
호스트 파일 데이터 형식Host file data type 데이터 파일의 특정 필드에 저장되는 데이터 형식 표시.Indicates the data type that is stored in a given field of the data file. ASCII 데이터 파일에는 SQLCHAR을, 네이티브 형식의 데이터 파일에는 기본 데이터 형식을 사용합니다.With ASCII data files, use SQLCHAR; for native format data files, use default data types. 자세한 내용은 bcp를 사용하여 파일 저장 유형 지정(SQL Server)을 참조하세요.For more information, see Specify File Storage Type by Using bcp (SQL Server).
접두사 길이Prefix length 필드의 길이 접두사 문자 수.Number of length prefix characters for the field. 유효한 접두사 길이는 0, 1, 2, 4 및 8입니다.Valid prefix lengths are 0, 1, 2, 4, and 8. 길이 접두사를 지정하지 않으려면 이 값을 0으로 설정합니다.To avoid specifying the length prefix, set this to 0. 필드에 NULL 데이터 값이 있으면 길이 접두사를 지정해야 합니다.A length prefix must be specified if the field contains NULL data values. 자세한 내용은 bcp를 사용하여 데이터 파일에 접두사 길이 지정(SQL Server)을 참조하세요.For more information, see Specify Prefix Length in Data Files by Using bcp (SQL Server).
호스트 파일 데이터 길이Host file data length 데이터 파일의 특정 필드에 저장된 데이터 형식의 최대 길이(바이트).Maximum length, in bytes, of the data type stored in the particular field of the data file.

구분 기호로 분리된 텍스트 파일에 대한 비 XML 서식 파일을 만드는 경우 모든 데이터 필드에 대한 호스트 파일 데이터 길이를 0으로 지정할 수 있습니다.If you are creating a non-XML format file for a delimited text file, you can specify 0 for the host file data length of every data field. 구분 기호로 분리된 텍스트 파일에서 접두사 길이가 0이며 종결자를 가져온 경우 필드 길이 값은 무시됩니다. 이는 필드에서 사용한 저장 공간이 데이터와 종결자를 합한 길이와 동일하기 때문입니다.When a delimited text file having a prefix length of 0 and a terminator is imported, the field-length value is ignored, because the storage space used by the field equals the length of the data plus the terminator.

자세한 내용은 bcp를 사용하여 필드 길이 지정(SQL Server)을 참조하세요.For more information, see Specify Field Length by Using bcp (SQL Server).
종결자Terminator 데이터 파일의 필드를 구분하는 구분 기호.Delimiter to separate the fields in a data file. 일반적인 종결자는 쉼표(,), 탭(\t), 줄의 끝(\r\n)입니다.Common terminators are comma (,), tab (\t), and end of line (\r\n). 자세한 내용은 필드 및 행 종결자 지정(SQL Server)을 참조하세요.For more information, see Specify Field and Row Terminators (SQL Server).
서버 열 순서Server column order SQL ServerSQL Server 테이블에 열이 나타나는 순서.Order in which columns appear in the SQL ServerSQL Server table. 예를 들어 데이터 파일의 4번째 필드가 SQL ServerSQL Server 테이블의 6번째 열에 매핑될 경우 4번째 필드의 서버 열 순서는 6입니다.For example, if the fourth field in the data file maps to the sixth column in a SQL ServerSQL Server table, the server column order for the fourth field is 6.

테이블의 열이 데이터 파일의 데이터를 받지 못하도록 하려면 서버 열 순서 값을 0으로 설정합니다.To prevent a column in the table from receiving any data from the data file, set the server column order value to 0.
서버 열 이름Server column name SQL ServerSQL Server 테이블에서 복사된 열의 이름.Name of the column copied from the SQL ServerSQL Server table. 필드의 실제 이름을 사용할 필요는 없지만 서식 파일의 필드를 비워 두면 안 됩니다.The actual name of the field is not required, but the field in the format file must not be blank.
열 데이터 정렬Column collation 문자 및 유니코드 데이터를 데이터 파일에 저장하는 데 사용하는 데이터 정렬.The collation used to store character and Unicode data in the data file.
참고

필드와 테이블 열의 번호 또는 순서가 서로 다른 데이터 파일로부터 대량 가져오기를 수행하도록 서식 파일을 수정할 수 있습니다.You can modify a format file to let you bulk import from a data file in which the number or order of the fields are different from the number or order of table columns. 자세한 내용은 이 항목의 뒷부분에 나오는 관련 태스크 를 참조하세요.For more information, see the Related Tasks list, later in this topic.

비 XML 서식 파일의 예 Example of a Non-XML Format File

다음 예에서는 이전에 만든myDepartmentIdentical-f-c.fmt라는 비 XML 서식 파일을 보여 줍니다.The following example shows a previously created non-XML format file (myDepartmentIdentical-f-c.fmt). 이 파일에서는 HumanResources.Department 예제 데이터베이스의 AdventureWorks2012 테이블에 있는 모든 열의 문자 데이터 필드에 대해 설명합니다.This file describes a character-data field for every column in the HumanResources.Department table in the AdventureWorks2012 sample database.

생성된 myDepartmentIdentical-f-c.fmt서식 파일에는 다음 정보가 포함됩니다.The generated format file, myDepartmentIdentical-f-c.fmt, contains the following information:

12.0  
4  
1       SQLCHAR       0       7       "\t"     1     DepartmentID     ""  
2       SQLCHAR       0       100     "\t"     2     Name             SQL_Latin1_General_CP1_CI_AS  
3       SQLCHAR       0       100     "\t"     3     GroupName        SQL_Latin1_General_CP1_CI_AS  
4       SQLCHAR       0       24      "\r\n"   4     ModifiedDate     ""  
참고

예제 비 XML 서식 파일과 관련된 서식 파일 필드를 보여 주는 그림에 대한 자세한 내용은 이 항목의 앞부분에 나오는 비 XML 서식 파일의 구조를 참조하세요.For an illustration that shows the format-file fields in relation to this sample non-XML format file, see Structure of Non-XML Format Files, earlier in this topic.

참고 항목See Also

bcp 유틸리티 bcp Utility
서식 파일 만들기(SQL Server) Create a Format File (SQL Server)
XML 서식 파일(SQL Server) XML Format Files (SQL Server)
데이터를 가져오거나 내보내기 위한 서식 파일(SQL Server) Format Files for Importing or Exporting Data (SQL Server)