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

Detaillierte Analyse von Javascript-Datenproxys und Ereignissen

Inhaltsverzeichnis Datenbroker und Events Überprü...

5 Möglichkeiten, um schnell den Leerraum eines Inline-Blocks in HTML zu entfernen

Der Eigenschaftswert „Inline-Block“ ist sehr nütz...

Gründe und Lösungen für das Nicht-Wirksamwerden der MySQL-SQL-Modus-Änderung

Inhaltsverzeichnis Vorwort Szenariosimulation Zus...

Beispiel für die MySQL-Volltext-Fuzzy-Suche nach der Methode MATCH AGAINST

MySQL 4.x und höher bieten Unterstützung für die ...

Der eigentliche Prozess der Implementierung des Zahlenrätsels im WeChat-Applet

Inhaltsverzeichnis Funktionseinführung Rendern 1....

Detaillierte Verwendung der MySQL-Funktionen row_number() und over()

Syntaxformat: row_number() über (Partition durch ...

Eine kurze Einführung in die Verwendung des Dezimaltyps in MySQL

Die in MySQL unterstützten Gleitkommatypen sind F...

Zwei Möglichkeiten, damit IE6 Bilder im PNG-24-Format normal anzeigt

Methode 1: Bitte fügen Sie den folgenden Code nach...

JS Canvas realisiert die Funktionen von Zeichenbrett und Signaturtafel

In diesem Artikel wird der spezifische Code von J...