W bazie danych Oracle SESSIONTIMEZONE
funkcja zwraca strefę czasową bieżącej sesji.
Składnia
Składnia wygląda tak:
SESSIONTIMEZONE
Tak więc żadne argumenty nie są wymagane (ani akceptowane) i nie ma nawiasów.
Przykład
Oto przykład:
SELECT SESSIONTIMEZONE
FROM DUAL;
Wynik:
Australia/Brisbane
Zwracanym typem jest przesunięcie strefy czasowej (typ znaku w formacie '[+|-]TZH:TZM'
) lub nazwę regionu strefy czasowej, w zależności od tego, jak wartość strefy czasowej bazy danych została określona w ostatniej ALTER SESSION
oświadczenie.
Dzwonię do SESSIONTIMEZONE
z nawiasami
Jak wspomniano, SESSIONTIMEZONE
funkcja jest wywoływana bez nawiasów.
Oto, co się dzieje, gdy nazywamy to w nawiasach:
SELECT SESSIONTIMEZONE()
FROM DUAL;
Wynik:
Error starting at line : 1 in command - SELECT SESSIONTIMEZONE() FROM DUAL Error at Command Line : 1 Column : 23 Error report - SQL Error: ORA-00923: FROM keyword not found where expected 00923. 00000 - "FROM keyword not found where expected" *Cause: *Action:
Pobierz strefę czasową bazy danych
Strefa czasowa bieżącej sesji może, ale nie musi, być taką samą wartością jak strefa czasowa bazy danych. Zależy to od konfiguracji i można je zmieniać niezależnie od siebie.
Możesz użyć DBTIMEZONE
funkcja, aby uzyskać strefę czasową bazy danych.