El comando de copia masiva (bcp) de Microsoft SQL Server le permite insertar grandes cantidades de registros directamente desde la línea de comandos. Además de ser una herramienta útil para los aficionados de la línea de comandos, la utilidad bcp es una herramienta poderosa para aquellos que buscan insertar datos en una base de datos SQL Server desde un archivo batch u otro método programático. Hay muchas maneras de introducir datos en una base de datos, pero bcp es el más rápido 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 utilizar inventory.dbo.fruits para insertar registros en la tabla de frutas propiedad del propietario de la base de datos en la base de datos de inventario.
- Dirección indica si desea importar (en 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:fruitinventory.txt.
- Las opciones le permiten especificar los 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 utilizar la opción -x para especificar un formato de archivo XML. Consulte la documentación bcp de Microsoft para obtener una lista completa.
Ejemplo de importación BCP
Para ponerlo todo junto, imagina que tienes una tabla de frutas en tu base de datos de inventario y quieres importar todos los registros de un archivo de texto almacenado en tu disco duro a esa base de datos. Usaría la siguiente sintaxis de comandos bcp:
bcp inventory.dbo.fruits en «C:fruitinventory.txt» -c -T
>>>Países Bajos
Esto produce la siguiente salida:
C:
C:>bcp inventory.dbo.fruits en "C:fruitinventory.txt" -c -T
.
36 filas copiadas.
>.
.
C:<>
Puede que haya notado dos nuevas opciones en esa línea de comandos. La opción -c especifica que el formato de archivo del archivo de importación será texto delimitado por tabulaciones con cada registro en una nueva línea. La opción -T especifica que bcp debe utilizar 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 «in» a «out». Por ejemplo, puede volcar el contenido de la tabla de frutas a un archivo de texto con el siguiente comando:
bcp inventory.dbo.fruits out «C:fruitinventory.txt» -c -C -T
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLB
Esto es lo que se ve en la línea de comandos:
bcp inventory.dbo.fruits out «C:fruitinventory.txt» -c -T
.
42 filas copiadas.
>.
.
C:<>
Eso es todo lo que hay en el comando bcp. Puede utilizar este comando desde archivos batch u otros programas con acceso a la línea de comandos DOS para automatizar la importación y exportación de datos desde su base de datos SQL Server.