Importar y exportar datos de forma masiva (SQL Server)Bulk Import and Export of Data (SQL Server)

SQL ServerSQL Server admite la exportación masiva de datos (conjuntos masivos de datos) desde una tabla de SQL ServerSQL Server y la importación en bloque de datos en una tabla o vista sin particiones de SQL ServerSQL Server . table or nonpartitioned view.

Laexportación masiva se refiere a la copia de datos de una tabla de SQL ServerSQL Server en un archivo de datos.Bulk exporting refers to copying data from a SQL ServerSQL Server table to a data file. Importación masiva significa cargar datos de un archivo de datos a una tabla de SQL ServerSQL Server . Bulk importing refers to loading data from a data file into a SQL ServerSQL Server table. Por ejemplo, puede exportar datos de una aplicación de MicrosoftMicrosoft Excel a un archivo de datos y, después, importarlos masivamente en una tabla de 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.

Métodos para la importación y exportación masivas de datos Methods for bulk importing and exporting data

SQL ServerSQL Server admite la exportación masiva de datos desde una tabla de SQL ServerSQL Server y la importación masiva de datos en una tabla o vista sin particiones de SQL ServerSQL Server . table or nonpartitioned view. Están disponibles los métodos básicos siguientes.The following basic methods are available.

MétodoMethod DescripciónDescription Importa datosImports data Exporta datosExports data
bcp, utilidadbcp utility Utilidad de línea de comandos (Bcp.exe) que importa y exporta datos masivamente y genera archivos de formato.A command-line utility (Bcp.exe) that bulk exports and bulk imports data and generates format files. Yes Yes
BULK INSERT, instrucciónBULK INSERT statement Instrucción Transact-SQLTransact-SQL que importa datos directamente de un archivo de datos en una tabla o vista sin particionar de una base de datos.A Transact-SQLTransact-SQL statement that imports data directly from a data file into a database table or nonpartitioned view. Yes NoNo
Instrucción INSERT ... Instrucción SELECT * FROM OPENROWSET(BULK...)INSERT ... SELECT * FROM OPENROWSET(BULK...) statement Instrucción Transact-SQLTransact-SQL que usa el proveedor de conjuntos de filas BULK OPENROWSET para importar masivamente datos en una tabla de SQL ServerSQL Server especificando la función OPENROWSET(BULK…) para seleccionar datos en una instrucción INSERT.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 NoNo
Asistente para importación y exportación de SQL ServerSQL Server Import and Export Wizard El asistente crea paquetes simples que importan y exportan datos entre muchos formatos de datos conocidos, incluidas bases de datos, hojas de cálculo y archivos de texto.The wizard creates simple packages that import and export data between many popular data formats including databases, spreadsheets, and text files. Yes Yes
Importante

Las operaciones de importación masiva de SQL Server no admiten los archivos de valores separados por comas (CSV).Comma-separated value (CSV) files are not supported by SQL Server bulk-import operations. Sin embargo, en algunos casos puede usar un archivo CSV como archivo de datos para una importación masiva de datos en SQL Server.However, in some cases you can use a CSV file as the data file for a bulk import of data into SQL Server. Tenga en cuenta que el terminador de campo de un archivo CSV no tiene que ser una coma.Note that the field terminator of a CSV file does not have to be a comma. Para más información, consulte Preparar los datos para exportar o importar de forma masiva (SQL Server).For more information, see Prepare Data for Bulk Export or Import (SQL Server).

Nota

Azure SQL Database y Azure SQL DW admiten la utilidad bcp solo para importar y exportar archivos delimitados.Only the bcp utility is suppported by Azure SQL Database and Azure SQL DW for importing and exporting delimited files.

Archivos de formato Format files

La utilidad bcp, BULK INSERT e INSERT ... SELECT * FROM OPENROWSET(BULK...) admiten el uso de un archivo de formato especializado que almacena información de formato para cada campo de un archivo de datos.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. El archivo de formato puede contener también información acerca de la tabla de SQL ServerSQL Server correspondiente.A format file might also contain information about the corresponding SQL ServerSQL Server table. El archivo de formato se puede utilizar para proporcionar toda la información de formato necesaria para la exportación e importación masivas de datos en una instancia de SQL ServerSQL 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.

Los archivos de formato proporcionan una forma flexible de interpretar los datos con el formato que tienen en el archivo de datos durante la importación, así como para dar formato a los datos del archivo de datos durante la exportación.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. Esta flexibilidad elimina la necesidad de escribir código para propósitos especiales con el fin de interpretar los datos o volver a darles formato según los requisitos específicos de SQL ServerSQL Server o la aplicación externa.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. Por ejemplo, si va a exportar masivamente datos que se van a cargar en una aplicación que requiere valores separados por comas, puede usar un archivo de formato para insertar comas como terminadores de campo en los datos exportados.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 admite dos tipos de archivos de formato: archivos de formato XML y no XML. supports two kinds of format files: XML format files and non-XML format files.

La utilidad bcp es la única herramienta que puede generar un archivo de formato.The bcp utility is the only tool that can generate a format file. Para obtener más información, vea Crear un archivo de formato (SQL Server).For more information, see Create a Format File (SQL Server). Para obtener más información sobre archivos de formato, vea Archivos de formato para importar o exportar datos (SQL Server).For more information about format files, see Format Files for Importing or Exporting Data (SQL Server).

Nota

En aquellos casos en que no se suministra un archivo de formato durante una operación de exportación o importación masiva, puede invalidar el formato predeterminado en la línea de comandos.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.

Temas relacionadosRelated Topics
Preparar los datos para exportar o importar de forma masiva (SQL Server)Prepare Data for Bulk Export or Import (SQL Server)
Formatos de datos para importación o exportación masivas (SQL Server)Data Formats for Bulk Import or Bulk Export (SQL Server)
 ● Usar el formato nativo para importar o exportar datos (SQL Server) ● Use Native Format to Import or Export Data (SQL Server)
 ● Usar el formato de caracteres para importar o exportar datos (SQL Server) ● Use Character Format to Import or Export Data (SQL Server)
 ● Usar el formato nativo Unicode para importar o exportar datos (SQL Server) ● Use Unicode Native Format to Import or Export Data (SQL Server)
 ● Usar el formato de caracteres Unicode para importar o exportar datos (SQL Server) ● Use Unicode Character Format to Import or Export Data (SQL Server)
 ● Importar datos con formato nativo y de caracteres de versiones anteriores de SQL Server ● Import Native and Character Format Data from Earlier Versions of SQL Server
Especificar formatos de datos por razones de compatibilidad mediante bcp (SQL Server)Specify Data Formats for Compatibility when Using bcp (SQL Server)
 ● Especificar el tipo de almacenamiento en archivo mediante bcp (SQL Server) ● Specify File Storage Type by Using bcp (SQL Server)
 ● Especificar la longitud de prefijo en los archivos de datos mediante bcp (SQL Server) ● Specify Prefix Length in Data Files by Using bcp (SQL Server)
 ● Especificar la longitud de campo mediante bcp (SQL Server) ● Specify Field Length by Using bcp (SQL Server)
 ● Especificar terminadores de campo y de fila (SQL Server) ● Specify Field and Row Terminators (SQL Server)
Mantener valores NULL o usar valores predeterminados durante la importación masiva (SQL Server)Keep Nulls or Use Default Values During Bulk Import (SQL Server)
Mantener valores de identidad al importar datos de forma masiva (SQL Server)Keep Identity Values When Bulk Importing Data (SQL Server)
Archivos de formato para importar o exportar datos (SQL Server)Format Files for Importing or Exporting Data (SQL Server)
 ● Crear un archivo de formato (SQL Server) ● Create a Format File (SQL Server)
 ● Usar un archivo de formato para importar datos de forma masiva (SQL Server) ● Use a Format File to Bulk Import Data (SQL Server)
 ● Usar un archivo de formato para omitir una columna de tabla (SQL Server) ● Use a Format File to Skip a Table Column (SQL Server)
 ● Usar un archivo de formato para omitir un campo de datos (SQL Server) ● Use a Format File to Skip a Data Field (SQL Server)
 ● Usar un archivo de formato para asignar columnas de tabla a campos de un archivo de datos (SQL Server) ● Use a Format File to Map Table Columns to Data-File Fields (SQL Server)

Más informaciónMore information!

Requisitos previos para el registro mínimo durante la importación masiva Prerequisites for Minimal Logging in Bulk Import
Ejemplos de importación y exportación en bloque de documentos XML (SQL Server) Examples of Bulk Import and Export of XML Documents (SQL Server)
SQL Server Integration Services SQL Server Integration Services
Copiar bases de datos en otros servidores Copy Databases to Other Servers
Realizar la carga masiva de datos XML (SQLXML 4.0) Performing Bulk Load of XML Data (SQLXML 4.0)
Realizar operaciones de copia masiva Performing Bulk Copy Operations