Bcp é o xeito máis rápido de obter datos nunha base de datos
O comando de copia masiva (bcp) de Microsoft SQL Server ofrécelle a capacidade de inserir grandes números de rexistros directamente desde a liña de comandos. Ademais de ser unha ferramenta útil para os afeccionados á liña de comandos, a utilidade bcp é unha ferramenta poderosa para aqueles que buscan inserir datos nunha base de datos de SQL Server desde un ficheiro por lotes ou outro método programático. Hai moitas formas de obter datos nunha base de datos, pero o bcp é o máis rápido cando está configurado cos parámetros correctos.
sintaxe bcp
A sintaxe básica para usar bcp é a seguinte:
bcponde os argumentos toman os seguintes valores:
- Table_name é o nome completo da táboa. Por exemplo, pode empregar inventory.dbo.fruits para inserir rexistros na táboa de froitos que posúe o propietario da base de datos na base de datos de inventario.
- A dirección indica se desexa importar ("en" dirección) ou exportar ("dirección").
- File_name é a ruta completa do ficheiro. Por exemplo, podería importar o ficheiro C: \ fruit \ inventory.txt.
- As opcións permiten especificar os parámetros para o funcionamento a granel. Por exemplo, pode especificar o número máximo de erros permitidos coa opción -m. Tamén pode usar a opción -x para especificar un formato de ficheiro XML. Consulte a documentación de bcp de Microsoft para obter unha lista completa.
Exemplo de importación bcp
Para colocar isto en conxunto, imaxine que ten unha táboa de froitos na base de datos de inventario e que quere importar todos os rexistros dun ficheiro de texto almacenado no seu disco ríxido nesa base de datos. Usarías a seguinte sintaxe do comando bcp:
bcp inventory.dbo.fruits en "C: \ fruit \ inventory.txt" -c -TIsto produce a seguinte saída:
C: \> bcp inventory.dbo.fruits en "C: \ fruit \ inventory.txt" -c -T Comezando a copia ... 36 filas copiadas. Tamaño do paquete de rede (bytes): 4096 Tempo de reloxo (ms.) Total: 16 Media: (2250.00 liñas por segundo) C: \>Pode ter notado dúas novas opcións nesa liña de comandos. A opción -c especifica que o formato de ficheiro do ficheiro de importación terá un texto delimitado por tabulación con cada rexistro nunha nova liña. A opción -T especifica que o bcp debería usar a autenticación de Windows para conectarse á base de datos.
Exemplo de exportación bcp
Pode exportar datos da súa base de datos con bcp cambiando a dirección da operación de "in" a "out." Por exemplo, pode despexar o contido da táboa de froitas nun ficheiro de texto co seguinte comando:
bcp inventory.dbo.fruits out "C: \ fruit \ inventory.txt" -c -TVexa como se ve na liña de comandos:
C: \> bcp inventory.dbo.fruits out "C: \ fruit \ inventory.txt" -c -T Comezando a copia ... 42 filas copiadas. Tamaño do paquete de rede (bytes): 4096 Tempo de reloxo (ms.) Total: 1 Promedio: (42000.00 liñas por segundo) C: \>Isto é todo ao comando bcp. Pode usar este comando desde os ficheiros por lotes ou outros programas con acceso á liña de comando DOS para automatizar a importación e exportación de datos desde a súa base de datos SQL Server.