none
Importar excel para tabela SQL RRS feed

  • Pergunta

  • Boa noite pessoal!

    Preciso de uma ajuda de voces. Tenho uma tabela em sql server 2008 com a seguinte estrutura:

    ID, CNPJ, FUNDO, SEGMENTO

    Tenho uma arquivo em excel com a mesma estrutura.

    Como que eu faco um update na tabela do banco para pegar todas as informações que estão no arquivo xls?

    Obrigada

    terça-feira, 9 de abril de 2013 02:20

Respostas

  • Fiz o seguinte comando:

    EXEC sp_addlinkedserver "IMPORTAR",
    "Jet 4.0",
    "Microsoft.Jet.OLEDB.4.0",
    "C:\Importar.xls",
    NULL,
    "Excel 5.0"
    GO

    EXEC sp_linkedservers

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

    Mas está dando o seguinte erro: 

    Msg 7308, Level 16, State 1, Line 1
    OLE DB provider 'Microsoft.Jet.OleDB.4.0' cannot be used for distributed queries because the provider is configured to run in single-threaded apartment mode.

    Alguem pode me ajudar?


    terça-feira, 9 de abril de 2013 02:39
  • Amigo, veja se assim funciona:

    sp_configure 'Ad Hoc Distributed Queries',1 
     GO 
     RECONFIGURE; 
     go 
    INSERT INTO PDD_tblAtivosAVencer SELECT
     * FROM OPENROWSET ('Microsoft.Jet.OleDB.4.0',
     'EXCEL 8.0;Database=C:\IMPORTAR.XLS'
     ,Plan1$)


    Alexandre Matayosi Conde Mauricio.

    terça-feira, 9 de abril de 2013 15:15

Todas as Respostas

  • Fiz o seguinte comando:

    EXEC sp_addlinkedserver "IMPORTAR",
    "Jet 4.0",
    "Microsoft.Jet.OLEDB.4.0",
    "C:\Importar.xls",
    NULL,
    "Excel 5.0"
    GO

    EXEC sp_linkedservers

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

    Mas está dando o seguinte erro: 

    Msg 7308, Level 16, State 1, Line 1
    OLE DB provider 'Microsoft.Jet.OleDB.4.0' cannot be used for distributed queries because the provider is configured to run in single-threaded apartment mode.

    Alguem pode me ajudar?


    terça-feira, 9 de abril de 2013 02:39
  • Amigo, veja se assim funciona:

    sp_configure 'Ad Hoc Distributed Queries',1 
     GO 
     RECONFIGURE; 
     go 
    INSERT INTO PDD_tblAtivosAVencer SELECT
     * FROM OPENROWSET ('Microsoft.Jet.OleDB.4.0',
     'EXCEL 8.0;Database=C:\IMPORTAR.XLS'
     ,Plan1$)


    Alexandre Matayosi Conde Mauricio.

    terça-feira, 9 de abril de 2013 15:15
  • Novaes,

    Uma possibilidade seria utilizar o comando BCP ou até mesmo o SSIS!!!!


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]

    terça-feira, 9 de abril de 2013 18:13
  • Alexandre, executei o comando que voce passou, mas deu o seguinte erro:

    Configuration option 'Ad Hoc Distributed Queries' changed from 1 to 1. Run the RECONFIGURE statement to install.
    Msg 7308, Level 16, State 1, Line 1
    OLE DB provider 'Microsoft.Jet.OleDB.4.0' cannot be used for distributed queries because the provider is configured to run in single-threaded apartment mode.


    terça-feira, 9 de abril de 2013 23:31
  • eu tambem estou com o mesmo problema que tu

    assim que encontrar solução te ajudo


    Twyntyy

    terça-feira, 18 de junho de 2013 16:19