Ich konvertiere eine Anwendung von Access zu SQL Server 2014. Eine der Funktionen dieses Tools ist es, Benutzern zu ermöglichen, Ad-hoc-SQL-Abfragen zum Ändern von Lösch zu erstellen oder fügen Sie Daten zu einer Anzahl von Tabellen hinzu.Verfolgen, wer Änderungen an SQL Server in C# -Anwendung oder SQL Server macht
Gerade jetzt in Access gibt es keine Nachverfolgung, wer was macht, wenn etwas bei einem Unfall versagt, gibt es keine Möglichkeit zu wissen, wer es war oder wann es passiert ist (es ist schon oft passiert, dass es ein ernstes Problem ist und einer der vielen Gründe, warum das Tool neu geschrieben wird).
Die Anwendung, die ich schreibe, ist eine Windows-Anwendung in C#. Ich suche nach ALLEN und allen Vorschlägen, wie dies getan werden kann, ohne eine große Nachfrage auf den Server (Verarbeitung oder Speicherplatz) zu stellen. Da die Benutzer ihre eigenen Abfragen erstellen, kann ich nicht einfach eine Spalte für Benutzername und Datum hinzufügen (die auch nur die letzte Änderung verfolgen würde).
Wir müssen die alten Daten nicht behalten oder sogar genau identifizieren, was geändert wurde. Nur wer Daten geändert hat und wann sie es getan haben. Ich möchte in der Lage sein, etwas anzusehen (Ansicht, Tabelle oder sogar separate Datenbank), die mir eine Liste der Benutzer zeigt, die eine Änderung vorgenommen haben und wann sie es getan haben.
lesen kann, Es gibt einen eingebauten Mechanismus in SQL Server ab Version 2008 starten, Change Data Capture (CDC), das tut nur das. Und es zeigt Ihnen auch, was genau geändert wurde. –
Von allem, was ich bisher gelesen habe, erfasst CDC nicht den Benutzernamen, der die Änderung vorgenommen hat. Auch muss ich nicht alle Änderungen behalten. das könnte dazu führen, dass die DB viel größer wird als ich will. –
Wie gehen Sie mit dem Zugriff auf die Datenbank in Ihrer C# -App um? Einzelbenutzer- oder Windows-Authentifizierung (dh jeder Benutzer hat ein Datenbankkonto)? – UnhandledExcepSean