MySQL Timestempeltyp

MySQL Timestempeltyp

In diesem Tutorial wird die Grundlagen der Arbeit mit dem Zeitstempel -Datentyp in MySQL behandelt.

Mit dem Zeitstempel-Datentyp können Sie Datums- und Uhrzeitwerte im Format von TimeStamp als Jyyy-MM-DD HH: MM: SS speichern.

Der Wert eines Zeitstempels Datentyp in MySQL reicht von 1970-01-01 00:00:01 bis 2038-01-19 03:14:07 in UTC.

Beim Speichern eines Zeitstempelwerts wandelt MySQL die aktuelle Zeit in UTC um und speichert sie in der Zieltabelle. MySQL wird den Wert von UTC während des Abrufens in die aktuelle Zeit umwandeln. Es ist gut zu beachten, dass diese Funktion nur für den Zeitstempeldatentyp gilt.

Da die Zeitzone auf eine bestimmte Sitzung festgelegt werden kann, können Sie mit meinem SQL denselben Wert abrufen, der gespeichert ist, solange die Zeitzone konstant bleibt.

Mysql TimeZone Beispiel

Lassen Sie uns ein Beispiel für die Arbeit mit dem Zeitstempel -Datentyp in MySQL behandeln. Betrachten Sie die folgende Tabelle mit einer Zeitstempelspalte.

Datenbank tempdb erstellen;
Verwenden Sie tempdb;
Tabellenprobe erstellen (
ID int auto_increment Primärschlüssel,
T Timestamp
);
Setzen Sie time_zone = '+03:00';


Die obige Abfrage erstellt eine Beispieldatenbank und Tabelle mit einer Zeitstempelspalte. Wir setzen die Zeitzone für die Sitzung auch mit dem Parameter Time_zone fest.

Wir können dann Datums- und Zeitwerte in die Spalte einfügen, wie in der folgenden Abfrage gezeigt:

In Probe einfügen (t)
Werte ('2022-10-10 23:45:23'),
('2020-12-10 13:43:32'),
('1990-10-10 16:23:32');


Wir können dann die Zeitstempelwerte aus der Tabelle wie gezeigt auswählen:

aus der Beispiel aus auswählen;


Ergebnis:

Demonstration der Verwendung der Zeitzone im Zeitstempel

Wie bereits erwähnt, können wir, wenn die Zeitzone konstant ist, den gleichen Wert, den wir in der Tabelle gespeichert haben, wie oben gezeigt.

Lassen Sie uns sehen, welche Werte wir erhalten, wenn wir den Zeitzonenwert ändern:

Setzen Sie time_zone = '-7: 00';
aus der Beispiel aus auswählen;


Wenn wir die obige Anweisung ausführen, sollten wir eine Tabelle mit dem Wert wie gezeigt erhalten:


Beachten Sie, dass wir verschiedene Werte erhalten als das, was wir gespeichert haben. Dies geschieht aufgrund der Änderung der Zeitzone.

Verwendung der automatischen Initialisierung mit dem Zeitstempeldatentyp

Wir können eine bestimmte Spalte automatisch initialisieren, indem wir die Standardbeschränkung auf den current_timestamp einstellen.

In solchen Fall fügt MySQL den aktuellen Zeitstempelwert in eine bestimmte Zeile ein, wie im folgenden Beispiel gezeigt:

Tabellenprobe erstellen (
ID int auto_increment Primärschlüssel,
T Timestamp Standard Current_Timestamp
);


Wir können dann Werte wie gezeigt in die Tabelle einfügen:

In Probe (ID) einfügen
Werte (1), (2), (3);


Wie Sie bemerken können, stellen wir die T -Spalte nicht vor. Dies sollte MySQL dazu zwingen, den Standardwert wie gezeigt zu verwenden:

aus der Beispiel aus auswählen;


Ausgang:


Wie Sie sehen können, teilen alle Zeilen den gleichen Zeitstempelwert, der die Einfügungszeit bezeichnet. Diese Funktion wird als automatische Initialisierung bezeichnet.

Abschluss

In diesem Beispiel haben wir die Grundlagen der Arbeit mit dem Zeitstempel -Datentyp in MySQL erörtert.