Was ist eine ACCDB-Datei?
Eine Datei mit der Erweiterung .accdb ist eine Microsoft Access 2007-Datenbankdatei, die Benutzerdaten in Tabellen speichert. Es unterstützt das Speichern benutzerdefinierte Formulare, SQL-Abfragen und andere Daten. ACCDB-Dateien ersetzten MDB-Dateien, nachdem Microsoft auf eine XML-basierte Dateistruktur umgestellt hatte. ACCDB-Dateien können weiterhin mit alter Kompatibilität in MDB konvertiert werden. ACCDB ist jedoch das inzwischen weit verbreitete Dateiformat für Access-Datenbanken. Microsoft unterstützte auch zusätzliche Funktionen im ACCDB-Format, wie z. B. die Möglichkeit, Dateianhänge, Binärdaten und mehrwertige Felder zu speichern.
ACCDB-Dateiformat
Wie bei MDB gibt es keine öffentlichen Spezifikationen für das ACCDB-Dateiformat. Microsoft unterstützt den programmgesteuerten Zugriff auf diese Dateien über den Standard Open Database Connectivity (ODBC) und Visual Basic for Applications (VBA).
Ein Einblick
Ein Hex-Dump einer einfachen ACCDB-Datei legt nahe, dass es allgemeine Ähnlichkeiten in der Struktur zu den neuesten Versionen der Vorgänger-MDB-Formatfamilie gibt. Beide Dateiformate verwenden feste Seitengrößen von 4096 Byte. Eine weitere Ähnlichkeit zwischen ACCDB und MDB ist die Form der magischen Zahl, die die Zeichenfolge „Standard ACE DB“ für ACCDB enthält. Ein Versions- oder Kompatibilitätscode befindet sich in beiden Formaten an derselben Stelle. Die mdbtools | In der HACKING-Datei heißt es: „Offset 0x14 enthält die Jet-Version dieser Datenbank“ und der inoffizielle MDB-Leitfaden stimmt zu. Die Informationen in diesen Quellen, kombiniert mit dem Wikipedia-Eintrag für Microsoft Jet Database Engine, legen nahe, dass ein Wert von 0x02 ACE 12 (Access 2007) und 0x03 ACE anzeigt 14 (Zugang 2010). Eine in Access 2010 erstellte minimale Datenbank und eine ähnliche in Access 2016 erstellte Datenbank haben jedoch beide 0x02 an diesem Speicherort. Eine minimale Datenbank, die in Access 2016 erstellt wurde, aber eine Spalte mit dem neu eingeführten Datentyp „Large Integer“ definierte, hatte einen Wert von 0x05. In ACCDB-Dateien scheint dieser Indikator die Kompatibilität der Datei widerzuspiegeln und nicht die Version der ACE-Engine, die zu ihrer Erstellung verwendet wurde.