Skip to content

Importar e exportar dados do SQL Server da linha de comando com bcp

28 de maio de 2021

A cópia em massa (bcp) do Microsoft SQL Server oferece a capacidade de inserir um grande número de registros diretamente da linha de comando. Além de ser uma ferramenta útil para aficionados por linha de comando, o utilitário bcp é uma ferramenta poderosa para aqueles que procuram inserir dados em um banco de dados SQL Server a partir de um arquivo em lote ou outro método programático. Existem várias maneiras de inserir dados em um banco de dados, mas o bcp é o mais rápido quando é configurado com os parâmetros corretos.

funky-data / Getty Images

Sintaxe bcp

A sintaxe básica para usar bcp é: bcp

type = “code”> onde os argumentos assumem os seguintes valores:

  • Nome da tabela – o nome totalmente qualificado da tabela. Por exemplo, você pode usar inventário.dbo.fruits para inserir registros na tabela de frutas pertencente ao proprietário do banco de dados no banco de dados de inventário.
  • Direção – indica se você deseja importar (dentro direção) ou exportação (Fora direção) dados.
  • Nome do arquivo – o caminho completo para o arquivo. Por exemplo, você pode importar o arquivo C: fruit inventory.txt.
  • Opções – permite que você especifique parâmetros para a operação em massa. Por exemplo, você pode especificar o número máximo de erros permitidos com o –M opção. Você também pode usar o –X opção para especificar um formato de arquivo XML. Consulte a documentação bcp da Microsoft para obter uma lista completa.

Exemplo de importação bcp

Para colocar tudo junto, imagine que você tem uma tabela de frutas em seu banco de dados de inventário e deseja importar todos os registros de um arquivo de texto armazenado em seu disco rígido para esse banco de dados. Você usaria a seguinte sintaxe de comando bcp: bcp inventory.dbo.fruits em “C: fruit inventory.txt” -c -T

type = “code”> Isso produz a seguinte saída: C: > bcp inventory.dbo.fruits in “C: fruit inventory.txt” -c -T
Iniciando cópia …
36 linhas copiadas.
Tamanho do pacote de rede (bytes): 4096
Tempo do relógio (ms.) Total: 16 Média: (2250,00 linhas por segundo)
C: >

Você deve ter notado duas novas opções nessa linha de comando. O –C A opção especifica que o formato do arquivo de importação será um texto delimitado por tabulação com cada registro em uma nova linha. O –T A opção especifica que o bcp deve usar a autenticação do Windows para se conectar ao banco de dados.

Exemplo de exportação bcp

Você pode exportar dados de seu banco de dados com bcp mudando a direção da operação de dentro para Fora. Por exemplo, você pode despejar o conteúdo da tabela de frutas em um arquivo de texto com o seguinte comando: bcp inventory.dbo.fruits out “C: fruit inventory.txt” -c -T

type = “code”> Veja como isso fica na linha de comando: C: > bcp inventory.dbo.fruits out “C: fruit inventory.txt” -c -T
Iniciando cópia …
42 linhas copiadas.
Tamanho do pacote de rede (bytes): 4096
Tempo do relógio (ms.) Total: 1 Média: (42.000,00 linhas por segundo)
C: >

Isso é tudo que há para o comando bcp. Você pode usar este comando a partir de arquivos em lote ou outros programas com acesso à linha de comando do DOS para automatizar a importação e exportação de dados do banco de dados do SQL Server.

Formato mla apa chicago Sua Citação

Chapple, Mike. “Importar e exportar dados do SQL Server da linha de comando com bcp.” ThoughtCo, maio. 21 de 2021, thinkingco.com/importing-and-exporting-sql-server-1019806.
Chapple, Mike. (2021, 21 de maio). Importar e exportar dados do SQL Server da linha de comando com bcp. Obtido em https://www.thoughtco.com/importing-and-exporting-sql-server-1019806
Chapple, Mike. “Importar e exportar dados do SQL Server da linha de comando com bcp.” ThoughtCo. https://www.thoughtco.com/importing-and-exporting-sql-server-1019806 (acessado em 28 de maio de 2021).