Partilhar via


Der Microsoft.ACE.OLEDB.12.0-Provider fehlt

Vor kurzem bin ich über ein kleines, lästiges Problem mit dem SQL Server 2012 gestolpert. Beim simplen Import einer Excel-Tabelle in einen SQL Server 2012 konnte die Aktion nicht durchgeführt werden. Stattdessen folgt eine Fehlermeldung “Microsoft.ACE.OLEDB.12.0-Provider fehlt” des SQL Server-Import/Export-Assistenten.

Doch schön der Reihe nach: Das Ziel ist das Importieren von Daten in eine bestehende SQL-Datenbank, die in einer Tabelle in einer Excel 2007-Datei vorliegen.

Tipp: Natürlich kann die SQL-Tabelle “on the fly”-durch den Assistenten automatisch erstellt werden, jedoch - nachdem der Importvorgang mit vielen Feldern manchmal etwas heikel ist - ist (meine) “best practice” die SQL-Zieltabelle VOR dem Import anzulegen, dann gibt's weniger Fehler beim Lauf des Import-Assistenten.

Die eigentliche Vorgangsweise zum Importieren von Daten in den SQL Server funktioniert im SQL Management Studio: Hier wird im Kontextmenü einer Datenbank Tasks/Daten importieren gewählt.

image

Nun wird die Quelldatei – als Datenquelle Microsoft Excel - wie in folgendem Screenshot ausgewählt.

image

Beim Ausführen mit Weiter folgt diese Fehlermeldung:

Der 'Microsoft.ACE.OLEDB.12.0'-Provider ist nicht auf dem lokalen Computer registriert. (System.Data)

Der Import kann nicht weiter ausgeführt werden. Ursache ist das verwendete System, bei mir Windows 8.1 x64 mit installiertem Office 2013 x32. Trotz vorhandenem Office 2013 fehlt anscheinend die erforderliche Bibliothek.

Nach etwas Suchen fand ich eine funktionierende Lösung: Der fehlende Provider kann durch die Installation der “2007 Office System Driver Data Connectivity Components” auf dem lokalen Rechner hinzugefügt werden. Die Tools (auch wenn schon etwas älter) können aus dem Microsoft Download Center bezogen werden.

2007 Office System Driver: Data Connectivity Components

image

Nach dem Download werden die Komponenten installiert:

image

Sofort nach der Fertigstellung klappt es nun mit dem SQL-Wizard, er setzt fort.
Die Excel-Daten können nun wie gewohnt in eine SQL-Tabelle importiert werden.

Ein etwas seltsamer Workaround – aber es funktioniert. Dies ist wahrscheinlich nicht die einzige Lösung, aber wenn jemand in dieses Problem läuft ist dieser Weg eine rasche, praktikable Lösung.

Comments

  • Anonymous
    March 22, 2014
    Danke. Hier das ganze in deutsch. Ich weiß nicht, ob es einen Unterschied macht.
    http://www.microsoft.com/de-de/download/confirmation.aspx?id=23734
  • Anonymous
    April 04, 2014
    Vielen Dank, hat geholfen.
  • Anonymous
    October 12, 2014
    DANKE - das war die Lösung !!!!
  • Anonymous
    December 15, 2014
    Vielen lieben dank für diesen Beitrag.
    Ich lerne gerade per Visual C# auf Acces-Datenbank zuzugreifen und hatte das selbe Problem, konnte es mit deinem tollen Lösungsweg beheben.
  • Anonymous
    March 03, 2015
    Funktioniert nach der Installation einwandfrei. Danke für den Hinweis. :)
  • Anonymous
    March 09, 2015
    Vielen Dank für die Anleitung, hat bestens funktioniert!
  • Anonymous
    June 11, 2015
    Danke!
    Das war kurz, knackig und sehr hilfreich.
  • Anonymous
    July 03, 2015
    Klasse, hat bei mir auch funktioniert unter Win 8.1 x64, Office 365 x64 und SQL 2014 x64. Danke!
  • Anonymous
    January 14, 2016
    This helps, thanks!
  • Anonymous
    January 30, 2016
    Funktioniert auch bei Problemen mit der Access Datenbank.
  • Anonymous
    January 30, 2016
    Funktioniert auch bei Problemen mit der Access Datenbank.