2016-11-04 4 views
2

Ich versuche, Daten aus einer EXCEL-Datei in SQL Server zu importieren. Wenn ich diese Abfrage ausführenImportieren von Daten aus Excel-Datei in SQL Server

SELECT * INTO EXCEL_IMPORT 
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0','Excel 12.0; Database=C:\Users\af\Desktop\Reports\Jan_2016_Ships.xlsx; HDR=YES; IMEX=1', 
'SELECT * FROM [Sheet1$]'); 

Ich erhalte diesen Fehler

The OLE DB provider "Microsoft.ACE.OLEDB.12.0" has not been registered. So

ich brauchte diesen Treiber zu installieren, aber nach ein paar Suchanfragen zu tun fand ich diese:

Installieren Microsoft.ACE.OLEDB.12.0 Treiber

So importieren Excel 2007-2016 Dateien in Microsoft SQL Server .ACE.OLEDB.12.0 Treiber sollte installiert sein.

der Treiber verwenden Sie den folgenden Link heruntergeladen werden:

Microsoft Access-Datenbank-Engine 2010 Redistributable

nicht über "Access" im Namen Sorgen Sie sich.

Warnung! x64-Treiber kann nicht installiert werden, wenn Microsoft Office 2007-2016 x86 bereits installiert ist!

So gibt es keine Möglichkeit zum Importieren von Excel-Daten in SQL Server x64 mit OPENROWSET/OPENDATASOURCE Funktionen auf einem Computer mit Microsoft Office x86!

So konnte ich diesen Treiber nicht installieren, weil ich SQL SERVER x64 und Microsoft Office x86 habe. Ich möchte nicht den einfachen Import-Assistenten verwenden, weil ich viele Tabellen habe und ich muss den Datentyp der Spalten überprüfen ... es wird in meinem Fall zeitaufwendig sein.

Ich glaube, es sollte eine Lösung geben, um meine Abfrage auf SQL SERVER x64 und Microsoft Office x86 auszuführen.

Irgendwelche Vorschläge bitte? Vielen Dank

+0

Datei konvertieren Jan_2016_Ships.xlsx zu Jan_2016_Ships.xls dann überprüfen – Mansoor

+0

die gleichen Fehler wie vor – JuniorDev

Antwort

0

Wenn Sie sie laufen nur, wenn Sie die Abfrage in einem SSIS-Paket ausführen können, können und die Lösung ändern, um 32-Bit-Modus (Rechtsklick auf die Lösung, Eigenschaften, Debugging, run64bitRuntime = false)

0

Ist Microsoft Excel in Ihrem System installiert ?. Dies könnte Ihr Problem lösen.

Sie können auch manuell in eine Tabelle von SQL Management Studio importieren.

rechts Klicken Sie auf Datenbank> Aufgaben> Importieren von Daten

+0

danken Ihnen für Ihren Vorschlag, aber ich bin auf der Suche nach einer Lösung, wie es von einem direkt ausführen Abfrage – JuniorDev

+0

Treiber von diesem Link erhalten. Installieren Sie es und versuchen Sie es erneut. https://www.microsoft.com/en-us/download/details.aspx?id=13255 –

+0

Danke für Ihren Vorschlag, aber ich bekomme den gleichen Fehler, wenn ich versuche, es zu installieren "Kann 64-Bit-Version von MS-Datenbank nicht installieren Engine, weil ich 32-Bit-Office-Produkte habe " – JuniorDev

Verwandte Themen