Schreibkonflikte zwischen Access und MariaDB per ODBC

6. Februar 2025 0 Von rsr

Wenn man mit Access mittels ODBC auf eine MariaDB- oder eine MySQL-Datenbank zugreift, kann es zu unter bestimmten Umständen zu Schreibkonflikten kommen. Access meldet dann, dass der Datensatz grade von einem anderen Benutzer bearbeitet wird. Das kann stimmen, aber halt meist eben auch nicht.

Wenn die Tabelle, bei der der Fehler auftritt kein Feld vom Namen und Typ „TIMESTAMP“ hat, vergleicht Access die einzelnen Felder der Tabelle, weil es sonst kein Unterscheidungsmerkmal findet.

Fügt man nun dieses Feld der Tabelle hinzu, vergleicht Access den Timestamp und kann anhand dessen feststellen, dass es keine Änderung gab und es gibt keine Schreibkonflikte mehr. Per SQL geht das folgendermaßen:

ALTER TABLE 'DEIN_TABELLENNAME'
ADD COLUMN TimeStamp TIMESTAMP on update CURRENT_TIMESTAMP NULL DEFAULT NULL;

Anschließend noch die Verknüpfung der Tabelle in Access aktualisieren. Fertig.