W bazie danych Oracle SYSTIMESTAMP funkcja zwraca datę systemową, w tym ułamki sekund i strefę czasową systemu, w którym znajduje się baza danych.
Zwracana wartość jest typu TIMESTAMP WITH TIME ZONE .
Składnia
Składnia wygląda tak:
SYSTIMESTAMP Tak więc żadne argumenty nie są wymagane (ani akceptowane) i nie ma nawiasów.
Przykład
Oto przykład:
SELECT SYSTIMESTAMP
FROM DUAL; Wynik:
06/AUG/21 07:45:00.540362000 PM -04:00
Ten przykład wyświetla datę na podstawie wartości NLS_DATE_FORMAT mojego systemu parametr (którym obecnie jest DD/MON/RR ). Możemy zmienić NLS_DATE_FORMAT parametru lub użyj funkcji takiej jak TO_CHAR() aby zwrócić wynik w innym formacie.
Przykład:
SELECT TO_CHAR(SYSTIMESTAMP, 'YYYY-MM-DD HH24:MI:SS TZR')
FROM DUAL; Wynik:
2021-08-06 19:48:43 -04:00
Wywołanie SYSTIMESTAMP z nawiasami
Jak wspomniano, SYSTIMESTAMP funkcja jest wywoływana bez nawiasów.
Oto, co się dzieje, gdy nazywamy to w nawiasach:
SELECT SYSTIMESTAMP()
FROM DUAL; Wynik:
Error starting at line : 1 in command - SELECT SYSTIMESTAMP() FROM DUAL Error at Command Line : 1 Column : 21 Error report - SQL Error: ORA-30088: datetime/interval precision is out of range 30088. 00000 - "datetime/interval precision is out of range" *Cause: The specified datetime/interval precision was not between 0 and 9. *Action: Use a value between 0 and 9 for datetime/interval precision.