|
Znakové a binární řetězce | Lexikální elementy | Komentáře |
Hodnoty typu DATE, TIME a TIMESTAMP lze v SQL zapisovat až trojím způsobem: dle norem SQL, dle specifikace ODBC a dle starších konvencí 602SQL. Tabulka shrnuje jednotlivé způsoby zápisu:
Datum | Čas | Datum s časem | |
norma SQL | DATE'1962-04-27' |
TIME'12:34:56.789' |
TIMESTAMP'1962-04-27 12:34:56' |
specifikace ODBC | {d '1962-04-27'} |
{t '12:34:56.789'} |
{ts '1962-04-27 12:34:56'} |
styl 602SQL | 27.4.1962 |
12:34:56.789 |
27.4.1962 12:34:56 |
Pokud údaj o čase obsahuje specifikaci časové zóny (zápis v UTC), zapisuje se takto:
Čas s časovou zónou | Datum s časem a časovou zónou | |
norma SQL | TIME'12:34:56.789+02:00' |
TIMESTAMP'1962-04-27 12:34:56+02:00' |
specifikace ODBC | {t '12:34:56.789+02:00'} |
{ts '1962-04-27 12:34:56+02:00'} |
styl 602SQL | 12:34:56.789+02:00 |
27.4.1962 12:34:56+02:00 |
Poznámky:
Zápis podle specifikace ODBC ve složených závorkách není chápán jako komentář. Případná desetinná část sekund v zápisu času se ignoruje.
Označení časové zóny musí následovat bezprostředně za časem a začíná znaménkem + nebo -.
Rozšíření jazyka SQL proti normě
Příklad:
Vložení datumu, času a časové značky třemi způsoby:
procedure InsDat(); BEGIN INSERT INTO DatCas(dat,cas,datcas) VALUES (DATE'1998-02-27',TIME'12:34:56',TIMESTAMP'1998-02-27 12:34:56'); INSERT INTO DatCas(dat,cas,datcas) VALUES ({d'1998-02-27'},{t'12:34:56.789'},{ts'1998-02-27 12:34:56.789'}); INSERT INTO DatCas(dat,cas,datcas) VALUES (27.2.1998,12:34:56,27.2.1998 12:34:56); END
Znakové a binární řetězce | Lexikální elementy | Komentáře |