Inhaltsverzeichnis- 1 Unterschied
- 1.1 Raumbelegung
- 1.2 Darstellungsumfang
- 1.3 Zeitzone
- 2 Testen
- 3 Auswahlmöglichkeiten
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
|