Windows-Updates vom Januar 2019 verursachen Access-Datenbankfehler

Windows-Sicherheitsupdates haben dazu geführt, dass Anwendungen nicht mehr auf Access-97-Datenbanken zugreifen können.

In Pocket speichern vorlesen Druckansicht 585 Kommentare lesen
Windows-Updates vom Januar 2019 verursachen Access-Datenbankfehler

(Bild: dpa, Michel Euler/AP)

Lesezeit: 5 Min.
Von
  • Günter Born
Inhaltsverzeichnis

Viele Windows-Anwendungen vom Terminplaner bis zum Buchhaltungsprogramm benutzen zum Speichern ihrer Daten im Hintergrund eine Datenbank. Gerade ältere Software vertraut dabei gern auf eine Access-97-Datenbank und spricht sie über die in Windows fest eingebaute Microsoft Jet Database Engine an. Solche Programme können nach dem Einspielen der Windows-Sicherheitsupdates vom 8. Januar 2019 nicht mehr auf ihre Daten zugreifen. Die mit Visual Studio 2010 erstellten Anwendungen liefern beim Zugriff einen Fehler "unknown database format" zurück, erläutert ein Entwickler im Forum Microsoft Answers. In dem dazugehörigen Forenthread wird dafür ein spezielles Windows-Update verantwortlich gemacht.

In den Sicherheitsupdates vom 8. Januar 2019 hat Microsoft in allen unterstützten Windows-Versionen unter anderem eine Schwachstelle der Jet Engine geschlossen. Dabei wurde auch die Bibliotheksdatei msrd3x40.dll auf die Version 4.0.9801.7 aktualisiert. Danach funktionieren Anwendungen nicht mehr, die noch über die Microsoft Jet Database Engine 4.0 Zugriffe auf Access-97-Datenbanken erfordern. Der Fehler dürfte in allen Anwendungen (zum Beispiel auch in Excel) auftreten, wenn Microsoft.Jet.OLEDB.4.0 als Data Source Provider eingetragen ist.

Durch Deinstallation der betreffenden Updates würde das Datenbank-Zugriffsproblem zwar gelöst. Danach sind die von den Sicherheitsupdates zu schließenden Schwachstellen (zum Beispiel die PowerShell-Remote-Code.Execution-Lücke) aber wieder offen.

[Update]Microsoft hat den Fehler bisher noch nicht bestätigt oder Abhilfe versprochen.[/update] Einige Nutzer haben sich daher mit einem anderen Workaround beholfen und die gepatchte Bibliotheksdatei msrd3x40.dll 4.0.9801.7 durch eine ältere Version 4.0.9801.5 vom September 2018 ersetzt. Dann ist zwar die Schwachstelle in der Jet Engine ungepatcht, aber zumindest die restlichen vom Sicherheitsupdate adressierten Schwachstellen sind dann beseitigt.

Ein anderer Vorschlag aus dem Microsoft-Answers-Forenthread, besteht darin, den Connect-String für den Data Source Provider von Microsoft.Jet.OLEDB.4.0 versuchsweise auf die ältere Variante Microsoft.Jet.OLEDB.3.51 zu ändern. Ein Nutzer schreibt in dem Forenthread, dass zumindest die Microsoft-Bibliothek DAO 3.51 (DAO Data Access Object) diese Zugriffe auch bei installierten Sicherheitsupdates abwickeln kann, während die neuere DAO-3.6-Schnittstelle den gleichen Fehler bringt.

Die Datenbank-Malaisen sind nicht die ersten Nebenwirkungen der Updates, die Microsoft seit dem Januar-Patchday verteilt. Bereits zuvor war bekannt geworden, dass einige der Patches massive Netzwerkprobleme in Windows 7 verursachen.

[Update 12.1.2019 15:40 Uhr:]

Microsoft hat inzwischen das Problem mit dem fehlerhaften Zugriff auf Access-97-.mdb-Datenbanken durch die Jet Database Engine als "known issue" bei allen nachfolgend genannten KB-Artikeln zu den Windows Sicherheitupdates vom 8. Januar 2019 bestätigt:

Der Software-Hersteller schreibt dazu: "Anwendungen, die eine Microsoft Jet-Datenbank mit dem Dateiformat Microsoft Access 97 verwenden, lassen sich möglicherweise nicht öffnen, wenn die Datenbank Spaltennamen mit mehr als 32 Zeichen aufweist. Der Anwendung wird beim Öffnen der Datenbankzugriff der Fehler 'Unrecognized Database Format' zurückgegeben." Microsoft will bis zum Februar 2019 einen Fix für diesen Jet-Database-Engine-Fehler nachliefern.

In der Zwischenzeit schlägt Microsoft als "Workaround" vor, die Datenbank um Spaltennamen mit mehr als 32 Zeichen zu bereinigen. Das dürfte im Großteil der Fälle nicht machbar sein, da Nutzer einerseits i.d.R. nicht über den Quellcode der Anwendung verfügen, um die Programmlogik bei Bedarf anzupassen. Zudem wird bei allen nicht trivialen Anwendungen und Datenbankstrukturen der Aufwand zur Umstellung der Datenbankfelder samt Validierung der Änderungen schlicht untragbar sein.

Die zweite von Microsoft vorgeschlagene Option sieht die Konvertierung der .mdb-Datenbank in neuere Access-Datenbankformate vor. Auch in diesem Szenario sollte im Einzelfall entschieden werden, ob diese Konvertierung durchführbar und validierbar ist. Unter diesem Aspekt könnte es für betroffene Administratoren, die eine schnelle Lösung benötigen, einfacher sein, die im obigen Text skizzierten Workarounds (Patch deinstallieren oder DLL austauschen) bis zum endgültigen Fix im Februar 2019 zu versuchen. (anw)