Dieser Artikel bildet eine Grundlage für das Erstellen, Arbeiten und die Verwendung zeitlicher Tabellen in SQL Server.
Systemversionierte Tabellen wurden im ANSI SQL 2011 -Standard eingeführt und wurden als Funktion in SQL Server 2016 und oben verfügbar.
Im Gegensatz zu einer normalen Tabelle, die nur aktuelle Daten anzeigen und arbeiten kann, können Sie mit den zeitlichen Tabellen auch mit zuvor gelöschten Daten anzeigen und arbeiten. Wie bereits erwähnt, ist dies aufgrund der Fähigkeit einer zeitlichen Tabelle möglich, die Änderungen an den Daten in einer Tabelle zu verfolgen.
Die Tabelle enthält zwei Schlüsselspalten: SysStartTime und SysendTime. Diese beiden Spalten werden verwendet, um die vorhandenen und vorherigen Daten für jeden Datensatz in einer Tabelle zu definieren. Sie können bestimmte Zeitintervalle verwenden, um anzuzeigen, wie sich die Daten in einer Tabelle geändert haben.
Erstellen Sie eine zeitliche Tabelle
Bevor Sie eine zeitliche Tabelle erstellen können, muss sie die folgenden Anforderungen erfüllen:
So erstellen Sie eine zeitliche Tabelle: T-SQL
Schauen wir uns eine einfache Demonstration der Erstellung einer zeitlichen Tabelle an. Betrachten Sie die unten angegebene Beispielabfrage:
Erstellen Sie Tabelle DBO.my_temporal_table (Sobald wir die obige Abfrage ausgeführt haben, erstellt der SQL -Server die Tabelle mit dem angegebenen Namen.
Im SQL Server Management Studio können Sie eine versionierte System -Tabelle anzeigen, indem Sie die Option Tabellen in Ihrer Zieldatenbank erweitern:
Beachten Sie, dass der SQL -Server automatisch eine Verlaufstabelle mit einem ähnlichen Schema wie die systemversionierte Tabelle generiert. Achten Sie jedoch auf die Spalten in der Verlaufstabelle. Beachten Sie, dass sie keine Einschränkungen haben.
Betrachten Sie das unten gezeigte Bild:
Wie Sie sehen werden, generiert SQL Server eine Verlaufstabelle unter einem Namen nach einem bestimmten Format. Um einen benutzerdefinierten Namen für Ihre Verlaufstabelle festzulegen, geben Sie ihn in der angezeigten Erstellung der Tabellenanweisung an:
---Wenn Sie die Option Indizes für die Verlaufstabelle erweitern, stellen Sie anschließend fest, dass SQL Server automatisch einen Clustered-Index automatisch generiert hat:
Verwenden von temporalen Tabellen
Testen wir die Funktionalität zeitlicher Tabellen, indem wir einige Datensätze in die Tabelle einfügen. Betrachten Sie die unten angegebene Beispielabfrage:
In my_temporal_table einfügen (ID, Fname, E -Mail, Abteilung)Sobald wir die Beispieldaten in die Tabelle eingefügt haben, können wir sie als:
Wählen Sie * aus my_temporal_table;Sie sollten eine Ausgabe in der Nähe des unten gezeigten als
Um zu verstehen, wie die versionierte System -Tabelle funktioniert, lassen Sie uns Zeilen in der Tabelle löschen und aktualisieren:
Löschen aus my_temporal_table wobei Abteilung = 'Datenbank';Fragen Sie die Daten in der Haupttabelle an:
Wählen Sie * aus my_temporal_table;Wenn Sie die Tabelle der Verlauf abfragen, sollten Sie die alte Version der Daten mit den richtigen Zeitstempeln sehen.
Abschluss
Dieser Leitfaden behandelte das Konzept der temporalen oder systemversionierten Tabelle in SQL Server. Mit diesem Handbuch sind Sie in der Lage, den Verlauf Ihrer Daten mithilfe von SQL Server Temporal Tabellen zu verfolgen. Wir hoffen, Sie haben diesen Artikel hilfreich gefunden. Weitere Linux -Hinweisartikel für Tipps und Tutorials finden Sie in Bezug auf Linux -Hinweise.