TurboSQL Guide

Zeitformate

Previous  Top  Next

Zeitkonstanten können entweder im proprietären TurboDB Format, das keine Anführungszeichen benötigt (hh:mm:ss), oder in zwei verschiedenen standardisierten Formaten angegeben werden. Sind lokale Datumseinstellungen erlaubt, ist nur das TurboDB Format und das aktuell eingestellte lokale Format gültig. In diesen Situationen werden die in Anführungszeichen gesetzten Standard-Zeitformate nicht akzeptiert.

Das native Format erwartet Zeit-Literale in der Form hh:mm wobei hh für die Stunden und mm für die Minuten steht. Turbo SQL benutzt die 24 Stunden Skala, das bedeutet 2:10 ist früh am morgen (2:10 AM) während 14:10 am frühen Nachmittag ist (2:10 PM).Der Zeitausdruck darf nicht in Anführungszeichen stehen.

INSERT INTO WorkOrder
(ID, StartTime) VALUES ('B00120', 22:30)

Dieses Format ist immer gültig und wird immer auf dieselbe Weise interpretiert. Es ist immer dann zu bevorzugen, wenn das Zeitformat nicht an die lokalen Einstellungen des Computers angepasst werden soll.

Falls Sie es vorziehen, können Sie die Zeit auch im amerikanischen hh.mm am/pm Format angeben. Dazu müssen Sie das Literal mit Anführungszeichen setzen und das Schlüsselwort TIME voranstellen:

INSERT INTO WorkOrder
(ID, StartTime) VALUES ('B00120', TIME'10.30 pm')

Ist der Typ der Zeichenkette offensichtlich, wie im vorangegangenen Beispiel, kann das Schlüsselwort TIME weggelassen werden. Im folgenden Beispiel dagegen muss TIME stehen:

SELECT StartTime - TIME'12:00:00 pm' FROM WorkOrder

Hinweis

Die erste Alternative, das native Format ohne Anführungszeichen, kann nicht mit der VCL-Komponente TTdbQuery verwendet werden. Der VCL-Parser für SQL interpretiert den Doppelpunkt als Start-Zeichen eines Parameters. Sie können diesen entweder löschen oder einfach ignorieren, das Statement wird in jedem Fall korrekt ausgeführt.