none
Inserir dados, atraves de uma tabela do excel RRS feed

  • Pergunta

  • Bom, meus amigos preciso inserir alguns dados em uma tabela, esses dados estão no excel mas toda vez que tento ele dá erro, estou usando o seguinte script:

    exec sp_configure
    'show advanced options', 1
    reconfigure
     
    exec sp_configure
    'Ad Hoc Distributed Queries', 1
    reconfigure

    INSERT INTO CREDENCIAIS SELECT 
    * FROM OPENROWSET ('Microsoft.Jet.OleDB.4.0',
    'EXCEL 8.0;Database=C:\cred.xls'
    ,Plan1$)

    e o erro que dá é esse: 

    Msg 213, Level 16, State 1, Line 1
    Column name or number of supplied values does not match table definition.

    sexta-feira, 8 de fevereiro de 2013 11:36

Respostas

  • Samuca, bom dia

    Este erro ocorre quando q quantidade de colunas a do select é maior, ou menor que a quantidade de colunas da tabela "CREDENCIAIS".

    É uma boa prática sempre especificar os campos de destino (no caso da tabela CREDENCIAIS ) e os campos de origem ( no select do excel).

    Abs.


    Eduardo Gomes - http://www.h1solucoes.com.br - Twitter: @edugp_sp

    • Sugerido como Resposta Alexandre Matayosi sexta-feira, 8 de fevereiro de 2013 18:18
    • Marcado como Resposta Ricardo Russo segunda-feira, 18 de fevereiro de 2013 12:44
    sexta-feira, 8 de fevereiro de 2013 11:41