OFFICIUM INSERVIO
Your reliable partner for your business software...
Möglichkeiten der Änderungsverfolgung im Überblick / Overview options for change tracking
>= 2016
Mittwoch, 9. April 2025
Deutsch
Hintergrund
In der Praxis gibt es sehr häufig die Anforderung , dass Kunden sehen möchten , wie und von wem Daten in der SQL-Datenbank verändert wurden.
Übersicht der Optionen
Es gibt mehrere Optionen , zum gewünschten Ziel zu kommen.
Nachfolgend eine Übersicht der wesentlichen Optionen , die in der Praxis sinnvoll sein können.
Typ/Art | Beschreibung | Vorteile/Nachteil | Weitere Infos |
Change Tracking | Erlaubt eine grundsätzliche Verfolgung von Änderungen auf Datensatzebene. | Performance ok. Keine Verfolgung auf Feldebene! Nur letzte Änderung je Zeile wird erfasst. | |
Change Data Capture | Erfasst Datenänderungen (INSERT, UPDATE, DELETE) auf Tabellenebene mithilfe von Transaktionsprotokollen. Änderungen werden in separaten CDC-Tabellen gespeichert. | Vollständige Änderungsverfolgung inkl. alter Werte! Kein Eingriff in die Quelltabelle! Nachteile: Hoher Speicherbedarf und komplexere Einrichtung und Verwaltung. | |
Trigger | Benutzerdefinierte Prozeduren, die bei Datenänderungen automatisch ausgelöst werden. Ermöglichen flexible Änderungsprotokollierung. | Sehr flexibel und individuell anpassbar mittels T-SQL. Genaue Kontrolle über Änderungslogik. Nachteile: Komplexe Wartung + Leistungseinbußen bei großen Datenmengen. | Siehe z.B. Sage 100-Logbuch-Trigger. |
Temporal Tables (System-Versioned) | Speichern automatisch den zeitlichen Verlauf von Daten. Jede Änderung erzeugt eine neue Version in einer Historientabelle. | Historisierung "out-of-the-box". Einfache Abfragen über Zeiträume. Nachteile: Höherer Speicherverbrauch + weniger flexibel bei komplexen Logikanforderungen. Protokolliert nur den Dateninhalt der Änderung und nicht den Benutzernamen. |