데이터 대량 가져오기 및 내보내기(SQL Server)Bulk Import and Export of Data (SQL Server)

SQL ServerSQL Server 에서는테이블에서 대량으로 데이터(대량 데이터 SQL ServerSQL Server )를 내보내고 SQL ServerSQL Server 테이블이나 분할되지 않은 뷰로 대량의 데이터를 가져올 수 있습니다. supports exporting data in bulk (bulk data) from a SQL ServerSQL Server table and importing bulk data into a SQL ServerSQL Server table or nonpartitioned view.

  • 대량 내보내기SQL ServerSQL Server 테이블의 데이터를 데이터 파일로 복사하는 것입니다.Bulk exporting refers to copying data from a SQL ServerSQL Server table to a data file.

  • 대량 가져오기 는 데이터 파일에서 SQL ServerSQL Server 테이블로 데이터를 로드하는 것입니다.Bulk importing refers to loading data from a data file into a SQL ServerSQL Server table. 예를 들어 MicrosoftMicrosoft Excel 응용 프로그램의 데이터를 데이터 파일로 내보낸 다음 해당 데이터를 SQL ServerSQL Server 테이블에 대량으로 가져올 수 있습니다.For example, you can export data from a MicrosoftMicrosoft Excel application to a data file and then bulk import that data into a SQL ServerSQL Server table.

데이터 대량 가져오기 및 내보내기 방법 Methods for bulk importing and exporting data

SQL ServerSQL Server 에서는 SQL ServerSQL Server 테이블에서 대량의 데이터를 내보내고 SQL ServerSQL Server 테이블이나 분할되지 않은 뷰로 대량의 데이터를 가져올 수 있습니다. supports bulk exporting data from a SQL ServerSQL Server table and for bulk importing data into a SQL ServerSQL Server table or nonpartitioned view. 다음과 같은 기본 방법을 사용할 수 있습니다.The following basic methods are available.

메서드Method 설명Description 데이터 가져오기Imports data 데이터 내보내기Exports data
bcp 유틸리티bcp utility 데이터를 대량으로 내보내고 가져오며 서식 파일을 생성하는 명령줄 유틸리티(Bcp.exe)입니다.A command-line utility (Bcp.exe) that bulk exports and bulk imports data and generates format files. Yes Yes
BULK INSERT 문BULK INSERT statement 데이터 파일에서 데이터베이스 테이블이나 분할되지 않은 뷰로 직접 데이터를 가져오는 Transact-SQLTransact-SQL 문입니다.A Transact-SQLTransact-SQL statement that imports data directly from a data file into a database table or nonpartitioned view. Yes 아니요No
INSERT ... SELECT * FROM OPENROWSET(BULK...) 문INSERT ... SELECT * FROM OPENROWSET(BULK...) statement INSERT 문의 데이터를 선택하는 OPENROWSET(BULK…) 함수를 지정하여 대량의 데이터를 Transact-SQLTransact-SQL 테이블로 가져오기 위해 OPENROWSET 대량 행 집합 공급자를 사용하는 SQL ServerSQL Server 문입니다.A Transact-SQLTransact-SQL statement that uses the OPENROWSET bulk rowset provider to bulk import data into a SQL ServerSQL Server table by specifying the OPENROWSET(BULK…) function to select data in an INSERT statement. Yes 아니요No
SQL Server 가져오기 및 내보내기 마법사SQL Server Import and Export Wizard 이 마법사는 데이터베이스, 스프레드시트, 텍스트 파일 등 많은 일반적인 데이터 형식 간에 데이터를 가져오고 내보내는 간단한 패키지를 만듭니다.The wizard creates simple packages that import and export data between many popular data formats including databases, spreadsheets, and text files. Yes Yes

중요

CSV(쉼표로 구분된 값) 파일은 SQL Server 대량 가져오기 작업에서 지원되지 않습니다.Comma-separated value (CSV) files are not supported by SQL Server bulk-import operations. 그러나 경우에 따라 데이터를 SQL Server로 대량으로 가져오기 위한 데이터 파일로 CSV(쉼표로 구분된 값) 파일을 사용할 수 있습니다.However, in some cases you can use a CSV file as the data file for a bulk import of data into SQL Server. CSV 파일의 필드 종결자로는 쉼표 이외에 다른 문자도 사용될 수 있습니다.Note that the field terminator of a CSV file does not have to be a comma. 자세한 내용은 대량 내보내기 또는 가져오기를 위한 데이터 준비(SQL Server)를 참조하세요.For more information, see Prepare Data for Bulk Export or Import (SQL Server).

참고

구분된 파일을 내보내고 가져올 경우 Azure SQL Database 및 Azure SQL DW에서는 bcp 유틸리티만 지원됩니다.Only the bcp utility is supported by Azure SQL Database and Azure SQL DW for importing and exporting delimited files.

서식 파일 Format files

bcp 유틸리티, BULK INSERTINSERT ... SELECT * FROM OPENROWSET(BULK...)은 모두 데이터 파일의 각 필드에 대한 서식 정보를 저장하는 서식 파일이라는 특수 파일 사용을 지원합니다.The bcp utility, BULK INSERT, and INSERT ... SELECT * FROM OPENROWSET(BULK...) all support the use of a specialized format file that stores format information for each field in a data file. 또한 서식 파일에는 해당 SQL ServerSQL Server 테이블에 대한 정보가 포함되어 있습니다.A format file might also contain information about the corresponding SQL ServerSQL Server table. 서식 파일을 사용하여 SQL ServerSQL Server인스턴스로 데이터를 대량으로 내보내거나 SQL Server 인스턴스에서 데이터를 대량으로 가져올 때 필요한 모든 서식 정보를 제공할 수 있습니다.The format file can be used to provide all the format information that is required to bulk export data from and bulk import data to an instance of SQL ServerSQL Server.

서식 파일을 사용하면 가져오기 작업 중 데이터 파일에 있는 데이터의 해석뿐만 아니라 내보내기 작업 중 데이터 파일에 있는 데이터의 서식을 지정할 수 있습니다.Format files provide a flexible way to interpret data as it is in the data file during import, and also to format data in the data file during export. 이와 같이 융통성이 있기 때문에 SQL ServerSQL Server 또는 외부 응용 프로그램에 대한 특정 요구 사항에 따라 데이터를 해석하거나 데이터의 서식을 다시 지정하기 위해 특수한 목적의 코드를 작성할 필요가 없습니다.This flexibility eliminates the need to write special-purpose code to interpret the data or reformat the data to the specific requirements of SQL ServerSQL Server or the external application. 예를 들어 대량으로 내보낸 데이터를 쉼표로 값을 구분해야 하는 응용 프로그램으로 로드해야 할 경우 서식 파일을 사용하여 내보낸 데이터에서 쉼표를 필드 종결자로 삽입할 수 있습니다.For example, if you are bulk exporting data to be loaded into an application that requires comma-separated values, you can use a format file to insert commas as field terminators in the exported data.

SQL ServerSQL Server 에서는 두 종류의 서식 파일, 즉 XML 서식 파일 및 비 XML 서식 파일을 지원합니다. supports two kinds of format files: XML format files and non-XML format files.

서식 파일을 생성할 수 있는 유일한 도구는 bcp 유틸리티 입니다.The bcp utility is the only tool that can generate a format file. 자세한 내용은 서식 파일 만들기(SQL Server)를 참조하세요.For more information, see Create a Format File (SQL Server). 서식 파일에 대한 자세한 내용은 데이터를 가져오거나 내보내기 위한 서식 파일(SQL Server)을 참조하세요.For more information about format files, see Format Files for Importing or Exporting Data (SQL Server).

참고

대량 내보내기 또는 가져오기 작업 동안 서식 파일이 제공되지 않는 경우 사용자는 명령줄에서 기본 서식 지정을 무시할 수 있습니다.In cases when a format file is not supplied during a bulk export or import operations, you can override the default formatting at the command line.

관련 항목Related Topics
대량 내보내기 또는 가져오기를 위한 데이터 준비(SQL Server)Prepare Data for Bulk Export or Import (SQL Server)
대량 가져오기 또는 대량 내보내기를 위한 데이터 형식(SQL Server)Data Formats for Bulk Import or Bulk Export (SQL Server)
 ● 네이티브 형식을 사용하여 데이터 가져오기 또는 내보내기(SQL Server) ● Use Native Format to Import or Export Data (SQL Server)
 ● 문자 형식을 사용하여 데이터 가져오기 또는 내보내기(SQL Server) ● Use Character Format to Import or Export Data (SQL Server)
 ● 데이터를 가져오거나 내보내기 위해 유니코드 네이티브 형식 사용(SQL Server) ● Use Unicode Native Format to Import or Export Data (SQL Server)
 ● 유니코드 문자 형식을 사용하여 데이터 가져오기 및 내보내기(SQL Server) ● Use Unicode Character Format to Import or Export Data (SQL Server)
 ● SQL Server 이전 버전으로부터 기본 및 문자 형식 데이터 가져오기 ● Import Native and Character Format Data from Earlier Versions of SQL Server
bcp를 사용하여 데이터 형식을 호환 가능하도록 지정(SQL Server)Specify Data Formats for Compatibility when Using bcp (SQL Server)
 ● bcp를 사용하여 File Storage 유형 지정(SQL Server) ● Specify File Storage Type by Using bcp (SQL Server)
 ● bcp를 사용하여 데이터 파일에 접두사 길이 지정(SQL Server) ● Specify Prefix Length in Data Files by Using bcp (SQL Server)
 ● bcp를 사용하여 필드 길이 지정(SQL Server) ● Specify Field Length by Using bcp (SQL Server)
 ● 필드 및 행 종결자 지정(SQL Server) ● Specify Field and Row Terminators (SQL Server)
대량 가져오기 수행 중 Null 유지 또는 기본값 사용(SQL Server)Keep Nulls or Use Default Values During Bulk Import (SQL Server)
데이터 대량 가져오기 중 ID 값 유지(SQL Server)Keep Identity Values When Bulk Importing Data (SQL Server)
데이터를 가져오거나 내보내기 위한 서식 파일(SQL Server)Format Files for Importing or Exporting Data (SQL Server)
 ● 서식 파일 만들기(SQL Server) ● Create a Format File (SQL Server)
 ● 서식 파일을 사용하여 데이터 대량 가져오기(SQL Server) ● Use a Format File to Bulk Import Data (SQL Server)
 ● 서식 파일을 사용하여 테이블 열 건너뛰기(SQL Server) ● Use a Format File to Skip a Table Column (SQL Server)
 ● 서식 파일을 사용하여 데이터 필드 건너뛰기(SQL Server) ● Use a Format File to Skip a Data Field (SQL Server)
 ● 서식 파일을 사용하여 테이블 열을 데이터 파일 필드에 매핑(SQL Server) ● Use a Format File to Map Table Columns to Data-File Fields (SQL Server)

자세한 정보!More information!

대량 가져오기의 최소 로깅을 위한 선행 조건 Prerequisites for Minimal Logging in Bulk Import
XML 문서 대량 가져오기 및 내보내기 예제(SQL Server) Examples of Bulk Import and Export of XML Documents (SQL Server)
SQL Server Integration Services SQL Server Integration Services
데이터베이스를 다른 서버로 복사 Copy Databases to Other Servers
XML 데이터 대량 로드 수행(SQLXML 4.0) Performing Bulk Load of XML Data (SQLXML 4.0)
대량 복사 작업 수행Performing Bulk Copy Operations