none
Usando BCP em um arquivo .bat RRS feed

  • Pergunta

  • Olá,

    Estou tentando usar o BCP no prompt de comando (Vista) para enviar um arquivo txt para uma tabela em um banco de dados remoto (2008), que não me permite usar xp_cmdshell nem Bulk Insert .

    Funciona normalmente, mas não quando tento executar o mesmo bcp em um arquivo .bat , e não consigo visualizar a mensagem de erro.

    Alguma forma de resolver, ou alternativas para esse procedimento?

    Grato
    domingo, 20 de dezembro de 2009 12:51

Respostas

  • Desculpe, respondi errado. Ao executar o bat pelo prompt de comando, o dos informou um caracter inválido no argumento -S nome do servidor .

    Aparentemente, o caracter era o sinal de '-', mas como estava apresentando erro, troquei pelo mesmo sinal de '-', e funcionou.

    Muito obrigado pela ajuda.
    • Marcado como Resposta Cláudio Más segunda-feira, 21 de dezembro de 2009 00:03
    segunda-feira, 21 de dezembro de 2009 00:03

Todas as Respostas

  • Ola

    Existe o argumento -e path na sua linha de comando bcp. Todos os erros serão gravados nesse arquivo. Mais detalhes em

    att

    William John Adam Trindade
    Analyste-programmeur
    ----------------------------------------------------------

    SOGI INFORMATIQUE LTÉE (http://www.sogi.com)
    domingo, 20 de dezembro de 2009 19:06
  • Obrigado, William

    Incluí o argumento mas o arquivo não foi gerado.

    bcp banco..tabela IN c:\sistema\dados.txt –S servidor -U usuario -P senha -E -k -t; -c -e c:\sistema\log_bcp.txt

    Sendo que o bcp funciona normalmente quando executado no prompt de comando, gerando o arquivo de log vazio.
    domingo, 20 de dezembro de 2009 19:43
  • Mas o que ocorre? Ele nao executa dentro do bat? Se vc executar direto (prompt de comando) o arquivo de erro é gerado?

    Att

    William John Adam Trindade
    Analyste-programmeur
    ----------------------------------------------------------

    SOGI INFORMATIQUE LTÉE (http://www.sogi.com)
    domingo, 20 de dezembro de 2009 19:56
  • Ao executar o bat, a janela do DOS abre e fecha rapidamente, e o arquivo de erro não é gerado.

    Pelo prompt de comando, o arquivo de erro é gerado vazio, sem indicação de erro e a base remota é carregada normalmente com os dados do arquivo txt.
    domingo, 20 de dezembro de 2009 20:05
  • E o que acontece se vc chamar o bat pelo prompt do dos? Se o arquivo de erro esta sendo gerado vazio, é porque nenhum erro ocorreu.

    Att

    William John Adam Trindade
    Analyste-programmeur
    ----------------------------------------------------------

    SOGI INFORMATIQUE LTÉE (http://www.sogi.com)
    domingo, 20 de dezembro de 2009 20:16
  • Ao executar o bat pelo prompt de comando, acontece o mesmo problema: a janela do DOS abre e fecha rapidamente, o arquivo de erro não é gerado e a base de remota não é atualizada com os dados do arquivo txt.

    O problema não é com o bcp, o problema é executar o bcp dentro do bat. No prompt de comando, o bcp funciona normalmente.
    domingo, 20 de dezembro de 2009 20:31
  • Desculpe, respondi errado. Ao executar o bat pelo prompt de comando, o dos informou um caracter inválido no argumento -S nome do servidor .

    Aparentemente, o caracter era o sinal de '-', mas como estava apresentando erro, troquei pelo mesmo sinal de '-', e funcionou.

    Muito obrigado pela ajuda.
    • Marcado como Resposta Cláudio Más segunda-feira, 21 de dezembro de 2009 00:03
    segunda-feira, 21 de dezembro de 2009 00:03