Importar y exportar datos de forma masiva (SQL Server)

Se aplica a: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

SQL Server admite la exportación masiva de datos (datos masivos) desde una tabla de SQL Server y la importación en bloque de datos a una tabla o vista sin particiones de SQL Server.

  • La exportación masiva se refiere a la copia de datos de una tabla de SQL Server en un archivo de datos.
  • La importación masiva se refiere a cargar datos de un archivo de datos a una tabla de SQL Server. Por ejemplo, puedes exportar datos de una aplicación de Microsoft Excel a un archivo de datos y, después, importarlos masivamente en una tabla de SQL Server.

Métodos para la importación y exportación masivas de datos

SQL Server admite la exportación masiva de datos desde una tabla de SQL Server y la importación en masa de datos a una tabla o vista sin particiones de SQL Server. Están disponibles los métodos básicos siguientes.

Method Descripción Importa datos Exporta datos
Utilidad bcp Utilidad de línea de comandos (Bcp.exe) que importa y exporta datos masivamente y genera archivos de formato.
Instrucción BULK INSERT Instrucción Transact-SQL que importa datos directamente de un archivo de datos en una tabla o vista sin particionar de una base de datos. No
INSERT ... SELECT * FROM OPENROWSET(BULK...) Instrucción Transact-SQL que usa el proveedor de conjuntos de filas BULK OPENROWSET para importar masivamente datos en una tabla de SQL Server especificando la función OPENROWSET(BULK...) para seleccionar datos en una instrucción INSERT. No
Asistente para importación y exportación de SQL Server 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.

Importante

Para obtener las reglas sobre el uso de un archivo de valores separados por comas (CSV) como archivo de datos para una importación en bloque de datos a SQL Server, vea Preparación de los datos para exportar o importar en bloque (SQL Server).

Nota:

Azure Synapse Analytics solo admite la utilidad bcp para importar y exportar archivos delimitados.

Archivos de formato

La utilidad bcp, BULK INSERTe 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. El archivo de formato puede contener también información acerca de la tabla de SQL Server correspondiente. 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 Server.

Importante

No se puede usar BCP para importar o exportar datos de o a Azure Blob Storage en Azure SQL Database. Use BULK INSERT o OPENROWSET para importar o exportar datos de o a Azure Blob Storage.

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. 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 Server o la aplicación externa. 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.

SQL Server admite dos tipos de archivos de formato: archivos de formato XML y no XML.

La utilidad bcp es la única herramienta que puede generar un archivo de formato. Para obtener más información, vea Crear un archivo de formato (SQL Server). Para obtener más información sobre archivos de formato, vea Archivos de formato para importar o exportar datos (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.

Temas relacionados
Preparar los datos para exportar o importar de forma masiva (SQL Server)
Formatos de datos para importación o exportación masivas (SQL Server)
 ● Uso del formato nativo para importar o exportar datos (SQL Server)
 ● Uso del formato de caracteres para importar o exportar datos (SQL Server)
 ● Uso del formato nativo Unicode para importar o exportar datos (SQL Server)
 ● Uso del formato de caracteres Unicode para importar o exportar datos (SQL Server)
 ● Importar datos con formato nativo y de caracteres de versiones anteriores de SQL Server
Especificar formatos de datos por razones de compatibilidad mediante bcp (SQL Server)
 ● Especificar el tipo de almacenamiento en archivo mediante bcp (SQL Server)
 ● Especificar la longitud de prefijo en los archivos de datos mediante bcp (SQL Server)
 ● Especificar la longitud de campo mediante bcp (SQL Server)
 ● Especificar terminadores de campo y de fila (SQL Server)
Mantener valores NULL o usar valores predeterminados durante la importación masiva (SQL Server)
Mantener valores de identidad al importar datos de forma masiva (SQL Server)
Archivos de formato para importar o exportar datos (SQL Server)
 ● Creación de un archivo de formato (SQL Server)
 ● Uso de un archivo de formato para la importación en bloque de datos (SQL Server)
 ● Uso de un archivo de formato para omitir una columna de tabla (SQL Server)
 ● Uso de un archivo de formato para omitir un campo de datos (SQL Server)
 ● Uso de un archivo de formato para asignar columnas de tabla a campos de un archivo de datos (SQL Server)

Información adicional