Skip to main content

Uso de bcp para importar y exportar datos desde SQL Server

T.I.R y V.A.N Explicación sencilla . (Abril 2025)

T.I.R y V.A.N Explicación sencilla . (Abril 2025)
Anonim

El comando de copia masiva (bcp) de Microsoft SQL Server le brinda la capacidad de insertar grandes cantidades de registros directamente desde la línea de comandos. Además de ser una herramienta útil para los aficionados a la línea de comandos, la utilidad bcp es una herramienta poderosa para aquellos que buscan insertar datos en una base de datos de SQL Server desde un archivo por lotes u otro método programático. Hay muchas formas de obtener datos en una base de datos, pero bcp es la más rápida cuando se configura con los parámetros correctos.

Sintaxis BCP

La sintaxis básica para usar bcp es:

bcp

donde los argumentos toman los siguientes valores:

  • Nombre de la tabla Es el nombre completo de la tabla. Por ejemplo, puede usar inventory.dbo.fruits para insertar registros en la tabla de frutas que posee el propietario de la base de datos en la base de datos del inventario.
  • Dirección indica si desea importar (dirección "in") o exportar (dirección "out") datos.
  • Nombre del archivo es la ruta completa al archivo. Por ejemplo, puede importar el archivo C: fruit inventory.txt.
  • Opciones Le permite especificar parámetros para la operación a granel. Por ejemplo, puede especificar el número máximo de errores permitidos con la opción –m. También puede usar la opción –x para especificar un formato de archivo XML. Consulte la documentación de Microsoft para obtener una lista completa.

Ejemplo de importación BCP

Para ponerlo todo junto, imagine que tiene una tabla de frutas en su base de datos de inventario y desea importar todos los registros de un archivo de texto almacenado en su disco duro a esa base de datos. Usaría la siguiente sintaxis del comando bcp:

bcp inventory.dbo.fruits en "C: fruit inventory.txt" -c -T

Esto produce el siguiente resultado:

C: > bcp inventory.dbo.fruits en "C: fruit inventory.txt" -c -T

Copia de inicio …

36 filas copiadas.

Tamaño del paquete de red (bytes): 4096

Tiempo de reloj (ms.) Total: 16 Promedio: (2250.00 filas por segundo)

C: >

Es posible que haya notado dos nuevas opciones en esa línea de comando. La opción –c especifica que el formato de archivo del archivo de importación será un texto delimitado por tabuladores con cada registro en una nueva línea. La opción –T especifica que bcp debe usar la autenticación de Windows para conectarse a la base de datos.

Ejemplo de exportación BCP

Puede exportar datos de su base de datos con bcp cambiando la dirección de la operación de "adentro" a "afuera". Por ejemplo, puede volcar el contenido de la tabla de frutas en un archivo de texto con el siguiente comando:

bcp inventory.dbo.fruits "C: fruit inventory.txt" -c -T

Así es como se ve en la línea de comando:

C: > bcp inventory.dbo.fruits "C: fruit inventory.txt" -c -T

Copia de inicio …

42 filas copiadas.

Tamaño del paquete de red (bytes): 4096

Tiempo de reloj (ms.) Total: 1 Promedio: (42000.00 filas por segundo)

C: >

Eso es todo lo que hay para el comando bcp. Puede usar este comando dentro de archivos por lotes u otros programas con acceso a la línea de comandos de DOS para automatizar la importación y exportación de datos desde su base de datos de SQL Server.