Kapitel 7: MySQL-Sprachreferenz 389
• Als eine Zahl im HHMMSS-Format, vorausgesetzt, dass diese als Zeitangabe einen Sinn
ergibt. 101112 zum Beispiel wird als ’10:11:12’ interpretiert. Folgende alternativen
Formate werden ebenfalls verstanden: SS, MMSS, HHMMSS, HHMMSS.bruchteil. Beachten
Sie, dass MySQL bislang noch nicht den Bruchteil speichert.
• Als Ergebnis einer Funktion, die einen Wert zur¨uck gibt, der in einem
TIME-Zusammenhang akzeptabel ist, wie CURRENT_TIME.
Bei TIME-Werten, die als Zeichenketten angegeben sind, die einen Begrenzer f¨ur den Zeitan-
teil beinhalten, ist es nicht notwendig, zwei Ziffern f¨ur Stunden-, Minuten- oder Sekunden-
Werte anzugeben, die weniger als 10 sind. ’8:3:2’ ist dasselbe wie ’08:03:02’.
Seien Sie vorsichtig damit, einer TIME-Spalte “kurze” TIME-Werte zuzuweisen. Ohne
Semikolon interpretiert MySQL Werte unter der Annahme, dass die am weitesten
rechts stehenden Ziffern Sekunden repr¨asentieren. (MySQL interpretiert TIME-Werte
als vergangene Zeit statt als Tageszeit.) Sie k¨onnten zum Beispiel denken, dass ’1112’
und 1112 ’11:12:00’ bedeuten (12 Minuten nach 11 Uhr), aber MySQL interpretiert
sie als ’00:11:12’ (11 Minuten, 12 Sekunden). Gleichermaßen wird ’12’ und 12 als
’00:00:12’ interpretiert. TIME-Werte mit Semikolon werden statt dessen immer als
Tageszeit interpretiert. Das heißt, ’11:12’ bedeutet ’11:12:00’, nicht ’00:11:12’.
Werte, die ausserhalb des TIME-Wertebereichs liegen, ansonsten aber zul¨assig sind, werden
auf den entsprechenden Endpunkt des Wertebereichs a/jointfilesconvert/293675/bgeschnitten. ’-850:00:00’ bzw.
’850:00:00’ werden in ’-838:59:59’ bzw. ’838:59:59’ umgewandelt.
Unzul¨assige TIME-Werte werden in ’00:00:00’ umgewandelt. Beachten Sie, dass es keine
M¨oglichkeit gibt zu unterscheiden, wenn ein Wert von ’00:00:00’ in einer Tabelle gespe-
ichert ist, ob dieser origin¨ar als ’00:00:00’ eingegeben wurde oder ob es ein unzul¨assiger
Wert war, weil ’00:00:00’ selbst ein zul¨assiger TIME-Wert ist.
7.2.2.4 Der
YEAR
-Typ
Der YEAR-Typ ist ein 1-Byte-Typ, der f¨ur die Darstellung von Jahren benutzt wird.
MySQL ruft YEAR-Werte ab und speichert sie im YYYY-Format. Der Wertebereich ist 1901
bis 2155.
Sie k¨onnen YEAR-Werte in einer Vielzahl von Formaten angeben:
• Als vierstellige Zeichenkette im Wertebereich von ’1901’ bis ’2155’.
• Als vierstellige Zahl im Wertebereich von 1901 bis 2155.
• Als zweistellige Zeichenkette im Wertebereich von ’00’ bis ’99’. Werte in den Bere-
ichen von ’00’ bis ’69’ und ’70’ bis ’99’ werden in YEAR-Werte in den Bereichen
von 2000 bis 2069 und 1970 bis 1999 umgewandelt.
• Als zweistellige Zahl im Wertebereich von 1 bis 99. Werte in den Bereichen von 1 bis
69 und 70 bis 99 werden in YEAR-Werte in den Bereichen von 2001 bis 2069 und 1970
bis 1999 umgewandelt. Beachten Sie, dass der Wertebereich f¨ur zweistellige Zahlen
sich geringf¨ugig vom Wertebereich f¨ur zweistellige Zeichenketten unterscheidet, weil Sie
0 nicht direkt als Zahl eingeben k¨onnen und sie dann als 2000 interpretiert wird. Sie
m¨ussen sie als Zeichenkette ’0’ oder ’00’ angeben, oder sie wird als 0000 interpretiert.
• Als Ergebnis einer Funktion, die einen Wert zur¨uck gibt, der in einem
YEAR-Zusammenhang akzeptabel ist, wie NOW().
Comentarios a estos manuales