Schreibkonflikt in Access Frontend mit MariaDB / MySQL / MSSQL Backend

20.05.2021 | Office

Ok, es ist eine Nische. Aber wenn ich mit diesem Beitrag helfen kann, dann freue es mich. Wenn ich darüber hinaus helfen kann, dann nicht zögern, einfach eine Mail schreiben an [email protected]

Setting: Access Frontend,  MySQL, MariaDB oder MSSQL Server Backend

Die Situation sieht wie folgt aus:

  • Access Datenbank (Backend) irgendwann mal konvertiert in in eine MySQL Datenbank bzw. MariaDB oder auch Microsoft SQL Server Datenbank
  • Access als Frontend beibehalten

Fehlermeldung: Schreibkonflikt, (angeblich) gleichzeitige Bearbeitung

Leider ist das so, dass beim Aktualisieren von Datensätzen also bei Aktualisierungsabfrage eine Fehlermeldung erscheint:
„Schreibkonflikt, Dieser Datensatz wurde seit Beginn der Bearbeitung von einem anderen Benutzer geändert.“

Ursache des Problems

Wenn Access als MDB verwendet wird, dann wird jeder Zugriff auf eine externe Datenbank von Access über die JET-Datenbank gesteuert. Access hat dann das letzte Wort. Teilweise werden auch Datentypen für die Zieldatenbank konvertiert.

Diese Konvertierung von Datentypen kann auch mal schief gehen und so kann es schon mal zu Konflikten zwischen dem mySQL Server (gleiches gilt auch für MariaDB) und dem Microsoft Access Frontend Client. Access versucht, die Felder eines Datensatzes einzeln mit dem vorherigen Zustand auf dem Server zu vergleichen und stellt dabei fest, ob der Datensatz in der Zwischenzeit geändert wurde.

Timestamp ist die Lösung

Die Lösung ist ganz einfach:

  • Mach ein Backup von deiner Datenbank! (SQLBackupAndFTP ?)
  • Prüfe dein Backup und speichere es so, dass du es wiederfindest
  • Lege in der ursprünglichen MySQL / MSSQL / o.ä. Tabelle ein neues Feld names TIMESTAMP an, mit dem Datentyp TIMESTAMP und sorge dafür, dass der Defaultwert auf current_timestamp liegt und dass wenn ein Update stattfindet der `Wert current_timestamp ebenfalls gesetzt wird.
  • Speichern
  • Verknüpfte Tabelle oder Tabellen neu verknüpfen

Dann macht Access keinen Feld für Feld Vergleich und stellt stattdessen anhand dieses Feldes fest, dass sich dieser Datensatz nicht verändert hat.

Lösung im Detail:

Hier der Befehl in der mySQL Schreibweise:

ALTER TABLE `[Tabellenname]`
ADD COLUMN `TimeStamp` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP() ON UPDATE CURRENT_TIMESTAMP() AFTER `[trigger]`;

Neuverknüpfung der Tabelle/n:

  • im Ribbon (Menüband) Externe Daten / Neue Datenquelle (ganz links) anklicken / Aus anderen Quellen / ODBC-Datenbank
  • Dann den untersten Menüpunkt: „Erstellen Sie eine Verknüpfung zur Datenquelle…“
  • ODBC Datenquelle auswählen
  • Tabelle auswählen
  • Alte Verknüpfung entfernen
  • Fertig!

 

Wenn ich darüber hinaus helfen kann, dann nicht zögern, einfach eine Mail schreiben an [email protected]

Hier ein paar Dienstleistungen von uns.

 

Stapelsignatur, Komfortsignatur – Digitale Signaturen im Medizinwesen

Digitale Signaturen: Entdecken Sie die Bedeutung und Anwendung einer digitalen Signatur in der Telematikinfrastruktur für eRezepte und eAU. Erfahren Sie mehr über Einzel-, Stapel- und Komfortsignaturen und wie sie den medizinischen Alltag vereinfachen.

Das eRezept und seine Integration in das Praxisverwaltungssystem von Data-AL

Entdecken Sie auf Netzleiter.net die Integration des eRezepts in Data-AL und wie es die medizinische Praxis modernisiert. Erfahren Sie mehr über die Vorteile digitaler Rezepte für Patienten und medizinisches Fachpersonal, sowie die verschiedenen Arten von digitalen Signaturen, die den Verschreibungsprozess effizienter und sicherer machen.

PDF-Formate: Ein umfassender Leitfaden zu PDF, PDF/A und PDF/X

Ein tiefer Einblick in die verschiedenen PDF-Formate, ihre spezifischen Anwendungen und wie sie die Darstellung und den Austausch von Dokumenten vereinfachen.

Top 10 der beliebtesten deutschen Passwörter 2023

Ein Alptraum für Systemadministratoren: Passwortunsicherheit im HomeOffice-Zeitalter Seit dem Beginn der Pandemie hat die Verschiebung zur Arbeit im HomeOffice neue Angriffspunkte eröffnet, die vielen Unternehmen ernsthafte Sorgen bereiten. Ein wesentlicher...

Die Bedeutung der §75b KBV-Richtlinie: Ein Überblick und Bewertung für Arztpraxen

Erfahren Sie mehr über die §75b KBV-Richtlinie, ihre Auswirkungen auf die IT-Sicherheit in Arztpraxen, MVZ, wie Ihnen Netzleiter helfen kann und die Pro und Kontra Argumente dieser wichtigen Regulierung im Gesundheitswesen

IT-Wartungsverträge: Ihre Investition in stetige Betriebsbereitschaft | Netzleiter

Entdecken Sie den Mehrwert von IT-Wartungsverträgen mit Netzleiter. Unsere Serviceverträge garantieren eine kontinuierliche Betriebsbereitschaft und sorgen für eine optimierte IT-Infrastruktur in Ihrem Unternehmen. Kontakt: 040 20 94 97 67

Die KBV-Richtlinie §75b: Ein umfassender Leitfaden zur IT-Sicherheit in medizinischen Einrichtungen

Entdecken Sie die KBV-Richtlinie §75b, die die IT-Sicherheit in medizinischen Einrichtungen regelt. Erfahren Sie, wie Netzleiter GmbH & Co. KG Ihnen hilft, die Anforderungen dieser Richtlinie zu erfüllen.

Pro und Kontra Argumente zu §75b KBV-Richtlinie

Die Richtlinie §75b des Sozialgesetzbuchs (SGB) V bezieht sich auf die IT-Sicherheit in der vertragsärztlichen und vertragszahnärztlichen Versorgung in Deutschland. Die Kassenärztliche Bundesvereinigung (KBV) hat den Auftrag, Anforderungen zur Gewährleistung der...

Effizienter IT-Support durch Netzleiters Technisches Backoffice | Professionelle IT-Lösungen in Hamburg

Erhalten Sie effiziente IT-Service durch unser technisches Backoffice – Ihr zuverlässiger IT-Dienstleister für IT-Support, Infrastruktur, Sicherheit und Wartung. Profitieren Sie von unserer technischen Hotline, unseren Lösungen und einer sehr guten Reaktionszeit für minimale Ausfallzeiten und maximale Kundenzufriedenheit.

USV-Systeme: Ein unverzichtbarer Schutz für Ihre IT-Server-Infrastruktur

Entdecken Sie, wie USV-Systeme von Netzleiter GmbH & Co. KG Ihre IT-Infrastruktur vor Stromausfällen schützen und die Betriebskontinuität Ihres Unternehmens sicherstellen können.