none
executar script via linha de comando RRS feed

  • Pergunta

  • eu gerei ontem um script de insert de uma tabela da minha base com os dados. so q eh muito grande n consigo copiar e colar no management studio. Como faço pra executa-lo? o management studio gerou umt xt eu mudei pra .sql e agora o q faço pra popualr minha tabela???
    • Movido Gustavo Maia Aguiar quarta-feira, 24 de agosto de 2011 20:59 (De:Programação avançada com o SQL Server)
    quarta-feira, 24 de agosto de 2011 19:42

Respostas

  • Oi Igor,

    O ideal seria ter os dados no arquivo e não os INSERTs. Se você tivesse o dados aí era fácil de fazer um BULK e com certeza o que roda em dias poderia ser importado em questão de horas ou minutos. Caso o SQLCMD não esteja sendo executado na mesma máquina do SQL, vai ficar mais lento. Você pode tentar copiar o arquivo e rodar o SQLCMD na máquina do SQL Server.

    [ ]s,

    Gustavo Maia Aguiar
    Blog: http://gustavomaiaaguiar.wordpress.com
    Vídeos: http://www.youtube.com/user/gmasql


    Classifique as respostas. O seu feedback é imprescindível
    • Marcado como Resposta Igor Auler terça-feira, 31 de janeiro de 2012 16:01
    quarta-feira, 24 de agosto de 2011 20:59

Todas as Respostas

  • Boa Tarde,

    O SQLCMD (SQL Command) é perfeito para isso.

    - Abra o PROMPT do DOS
    - Digite SQLCMD -U Usuario -P Senha -i LocaleNomedoArquivoSQL -d BancoDeDadosOndeSeraExecutado

    Caso não queira usar um usuário ou senha, mas sua conta do Windows, retire o -U e o -P e coloque -E
    Os parâmetros são Case Sensitive

    [ ]s,

    Gustavo Maia Aguiar
    Blog: http://gustavomaiaaguiar.wordpress.com
    Vídeos: http://www.youtube.com/user/gmasql


    Classifique as respostas. O seu feedback é imprescindível
    quarta-feira, 24 de agosto de 2011 19:52
  • C:\Users\igorfreire>SQLCMD -E -i C:\igor.sql -d equ
    HResult 0x2, Level 16, State 1
    Named Pipes Provider: Could not open a connection to SQL Server [2].
    Sqlcmd: Error: Microsoft SQL Server Native Client 10.0 : A network-related or in
    stance-specific error has occurred while establishing a connection to SQL Server
    . Server is not found or not accessible. Check if instance name is correct and i
    f SQL Server is configured to allow remote connections. For more information see
     SQL Server Books Online..
    Sqlcmd: Error: Microsoft SQL Server Native Client 10.0 : Login timeout expired.

     

     

    deu esse erro ae =/

    quarta-feira, 24 de agosto de 2011 19:57
  • Boa Tarde,

    Pela mensagem de erro eu imagino que sua instância não seja a padrão ou que você não esteja na máquina onde irá rodar o script. Tente o seguinte:

    SQLCMD -E -i C:\igor.sql -d equ -S Servidor\Instancia

    Assim deve funcionar.

    [ ]s,

    Gustavo Maia Aguiar
    Blog: http://gustavomaiaaguiar.wordpress.com
    Vídeos: http://www.youtube.com/user/gmasql


    Classifique as respostas. O seu feedback é imprescindível
    quarta-feira, 24 de agosto de 2011 19:59
  • pssei o servidor e foi..mas krak eh MUITO lento sao milhoes de linha ele ta indo linha por linha?? ta de sacanagem? rsrs amanha acaba isso adhadshashhads tem outro jeito mais rapido n?
    quarta-feira, 24 de agosto de 2011 19:59
  • acredito que vc esta executando de uma estacao de trabalho enta passa o -Snomeservidor

     

    SQLCMD -Snomedoservidor -E -i C:\igor.sql -d equ


    Att.
    Marcelo Fernandes

    MCP, MCDBA, MCSA, MCTS.
    Se útil, classifique!!!
    Me siga no twitter: @marcelodba

    quarta-feira, 24 de agosto de 2011 20:01
    Moderador
  • Oi Igor,

    O ideal seria ter os dados no arquivo e não os INSERTs. Se você tivesse o dados aí era fácil de fazer um BULK e com certeza o que roda em dias poderia ser importado em questão de horas ou minutos. Caso o SQLCMD não esteja sendo executado na mesma máquina do SQL, vai ficar mais lento. Você pode tentar copiar o arquivo e rodar o SQLCMD na máquina do SQL Server.

    [ ]s,

    Gustavo Maia Aguiar
    Blog: http://gustavomaiaaguiar.wordpress.com
    Vídeos: http://www.youtube.com/user/gmasql


    Classifique as respostas. O seu feedback é imprescindível
    • Marcado como Resposta Igor Auler terça-feira, 31 de janeiro de 2012 16:01
    quarta-feira, 24 de agosto de 2011 20:59