Der Unterschied und die Wahl zwischen Datum und Uhrzeit und Zeitstempel in MySQL

Der Unterschied und die Wahl zwischen Datum und Uhrzeit und Zeitstempel in MySQL

Die beiden in MySQL am häufigsten verwendeten Zeitspeichertypen sind datetime und timestamp . Die Wahl zwischen diesen beiden Optionen ist eine wichtige Überlegung beim Bau eines Tisches. Lassen Sie uns über die Unterschiede und die Auswahl sprechen.

1 Unterschied

1.1 Raumbelegung

Typ Belegt Bytes Darstellung
Datum/Uhrzeit 8 Byte jjjj-mm-tt hh:mm:ss
Zeitstempel 4 Byte jjjj-mm-tt hh:mm:ss

1.2 Darstellungsumfang

Typ Darstellungsbereich
Datum/Uhrzeit '1000-01-01 00:00:00.000000' bis '9999-12-31 23:59:59.999999'
Zeitstempel '1970-01-01 00:00:01.000000' bis '2038-01-19 03:14:07.999999'

Zeitstempel wird im Chinesischen als „ timestamp “ übersetzt und gibt die Anzahl der Sekunden von der aktuellen Zeit bis zum Unix-Jahr 1 an (0 Stunden, 0 Minuten, 0 Sekunden am 1. Januar 1970). Bei manchen Zeitberechnungen ist es schwieriger, wenn sie im Format datetime vorliegen. Wenn ich beispielsweise am 1994-1-20 06:06:06 geboren wurde und die aktuelle Zeit 2016-10-1 20:04:50 ist, dann ist zur Berechnung meiner Lebenszeit eine Funktion zur Konvertierung von datetime erforderlich, der Zeitstempel kann jedoch direkt abgezogen werden.

1.3 Zeitzone

timestamp nimmt nur 4 Bytes ein und wird im UTC-Format gespeichert. Er ruft automatisch die aktuelle Zeitzone ab und führt die Konvertierung durch.

datetime werden als 8 Bytes gespeichert und es wird kein Zeitzonenabruf durchgeführt.

Das bedeutet, dass beim timestamp die abgerufenen Daten unterschiedlich sind, wenn die Zeitzone beim Speichern und Abrufen unterschiedlich ist. Für datetime erhalten Sie das, was Sie eingeben.

Ein weiterer Unterschied besteht darin, dass bei einer Speicherung von NULL timestamp automatisch die aktuelle Zeit speichert, während datetime NULL speichert.

2 Testen

Lassen Sie uns eine neue Tabelle erstellen

Einfügen von Daten

Wenn Sie sich die Daten ansehen, können Sie sehen, dass NULL gespeichert ist. timestamp speichert automatisch die aktuelle Zeit, während datetime NULL

Ändern Sie die Zeitzone auf Ost 9 und überprüfen Sie die Daten erneut. Sie werden feststellen timestamp eine Stunde länger ist als datetime .

Was passiert, wenn der eingegebene Wert ungültig ist? Wenn die eingegebene Zeit ein Zeitstempel ist

Das Ergebnis ist 0000-00-00 00:00:00 . Laut der offiziellen Erklärung wird der eingegebene Wert, wenn er ungültig ist, 0000-00-00 00:00:00 umgewandelt, aber der Zeitstempel ist kein gültiges Zeitformat MySQL .

Welche Formulare können also eingefügt werden? Hier sind drei

//Die folgenden sind alle von MySQL zugelassenen Formulare, und MySQL verarbeitet sie automatisch
01.10.2016 20:48:59 Uhr
2016#10#01 20/48/59
20161001204859

3 Auswahlmöglichkeiten

Wenn die Zeit Linux Zeit überschreiten soll oder die Zeitzone des Servers anders ist, wird empfohlen, datetime zu wählen.

Wenn Sie die Funktion zum automatischen Einfügen oder automatischen Aktualisieren der Zeit verwenden möchten, können Sie timestamp verwenden.

Wenn Sie nur Jahr, Datum und Uhrzeit darstellen möchten, können Sie auch year , date und time verwenden, die jeweils 1, 3 und 3 Bytes belegen, und datetime ist ihre Sammlung.

Dies ist das Ende dieses Artikels über den Unterschied und die Auswahl zwischen datetime und Uhrzeit sowie timestamp in MySQL . Weitere Informationen zu datetime und Uhrzeit sowie timestamp in MySQL finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Zusammenfassung der Verwendung von Datetime und Timestamp in MySQL
  • Eine kurze Erläuterung des Datums-/Uhrzeitformats beim Exportieren von Tabellendaten von MySQL nach Excel
  • Der Unterschied und die Verwendung von Datum/Uhrzeit und Zeitstempel in MySQL
  • So legen Sie den Standardwert für den Datums-/Uhrzeittyp in MySQL fest
  • So erstellen Sie einen Datetime-Typ in einer MySQL-Datenbank

<<:  Beispielcode zum Setzen von Hotlinks und Koordinatenwerten für Webbilder

>>:  Verwendung von TypeScript-Generics

Artikel empfehlen

Fallstudie zur Übermittlung von HTML-Formularen

Um die Methode zur Formularübermittlung zusammenz...

So verwenden Sie Anti-Shake und Throttling in Vue

Inhaltsverzeichnis Vorwort Konzept Stabilisierung...

So ändern Sie die Kodierung in MySQL Version 5.7 unter Windows auf UTF-8

Vorwort Ich habe gerade angefangen, MySQL zu lern...

So wählen und verwenden Sie PNG, JPG und GIF als Web-Bildformate

Welches dieser Formate (GIF, PNG oder JPG) sollte...

So implementiert Webpack das Caching statischer Ressourcen

Inhaltsverzeichnis Einführung Unterscheiden Sie z...

So kompilieren und installieren Sie xdebug in einer Ubuntu-Umgebung

Dieser Artikel beschreibt, wie xdebug in einer Ub...

JavaScript-HTML zur Implementierung der mobilen Red Envelope Rain-Funktionsseite

In diesem Artikelbeispiel wird der spezifische HT...

Lebenszyklus und Hook-Funktionen in Vue

Inhaltsverzeichnis 1. Was ist der Lebenszyklus 2....

Kompatibilitätsprobleme mit CSS3-Farbverlaufshintergründen

Wenn wir eine Hintergrundfarbe mit Farbverlauf er...