sql >> Databáze >  >> RDS >> Sqlserver

Poskytovatel OLE DB Microsoft.ACE.OLEDB.12.0 pro propojený server (null) vrátil zprávu Záložka je neplatná.

Po mnoha bojích s tímto problémem jsem našel následující řešení:

  1. Na 64bitových serverech a boxech musíte nejprve ODINSTALOVAT všechny 32bitové aplikace a instance Microsoft Office (instalace Accessu 2007, 32bitové sady Office 10 atd.). Pokud tak neučiníte, nebudete moci nainstalovat nové 64bitové součásti Microsoft Access Database Engine 2010 Redistributable. Ano, je to bolest hlavy, ale našel jsem jediný způsob, jak nainstalovat nové náhrady za komponenty motoru JET, které je třeba spustit na 64bitových počítačích.
  2. Stáhněte si a nainstalujte novou komponentu od společnosti Microsoft:http://www.microsoft.com/downloads/en/details.aspx?FamilyID=c06b8369-60dd-4b64-a44b-84b371ede16d&displaylang=cs
    • Tím se nainstalují přístupové a další nástroje, které potřebujete k nastavení propojených serverů, souborů OPENROWSET Excel atd.
  3. Otevřete SQL Server a spusťte následující:

    sp_configure 'show advanced options', 1;
    GO
    RECONFIGURE;
    GO
    sp_configure 'Ad Hoc Distributed Queries', 1;
    GO
    RECONFIGURE;
    GO
    EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'AllowInProcess', 1
    GO
    EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'DynamicParameters', 1
    GO
    
    • Tím se nastaví parametry potřebné pro přístup a spouštění dotazů souvisejících s komponentami. Adresa ‘null
  4. Nyní, pokud spouštíte volání OPENROWSET, musíte opustit volání provedená pomocí starých parametrů JET a použít nová volání následovně:

    (*Example, importing an EXCEL file directly into SQL):
    DONT DO THIS….
    SELECT * FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0','Excel 8.0;HDR=YES;Database=c:\PATH_TO_YOUR_EXCEL_FILE.xls','select * from [sheet1$]')
    
    USE THIS INSTEAD…
    SELECT * FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;Database=c:\PATH_TO_YOUR_EXCEL_FILE.xls','select * from [sheet1$]')
    
    *At this point resolved two SQL issues and ran perfectly
    
  5. Nyní ta zábavná část…..najděte všechny své disky Office a přeinstalujte Office a/nebo potřebné aplikace zpět do počítače. 64bitovou verzi Office 10 můžete nainstalovat tak, že přejdete na disk a přejdete do 64bitové složky a spustíte ji, ale dejte si pozor, protože v některých případech některé aplikace třetích stran ještě nemají rozhraní s touto verzí Office.


  1. Modelování základní datové struktury pro správu uživatelů, vláken a příspěvků

  2. zdroj funkce extrakce postgresql

  3. Správný způsob použití LIKE '%{$var}%' s připravenými příkazy? [mysqli]

  4. Použijte alias tabulky v jiném dotazu k procházení stromu