11.11. LOCALTIME
Available inDSQL, PSQL, ESQL
TypeTIME
Syntax
|
LOCALTIME [ (<precision>) ]
|
|<precision> ::= 0 | 1 | 2 | 3
The optional precision argument is not supported in ESQL.
LOCALTIME
ParameterParameter | Description |
---|---|
precision | Precision. The default value is 0. Not supported in ESQL |
LOCALTIME
returns the current server time.
The default is 0 decimals, i.e. seconds precision.
LOCALTIME
was introduced in Firebird 3.0.4 as an alias ofCURRENT_TIME
. In Firebird 4,CURRENT_TIME
will return aTIME WITH TIME ZONE
instead of aTIME [WITHOUT TIME ZONE]
, whileLOCALTIME
will continue to returnTIME [WITHOUT TIME ZONE]
. It is recommended to switch fromCURRENT_TIME
toLOCALTIME
for forward-compatibility with Firebird 4.LOCALTIME
has a default precision of 0 decimals, whereLOCALTIMESTAMP
has a default precision of 3 decimals. As a result,LOCALTIMESTAMP
is not the exact sum ofCURRENT_DATE
andLOCALTIME
, unless you explicitly specify a precision (i.e.LOCALTIME(3)
orLOCALTIMESTAMP(0)
).Within a PSQL module (procedure, trigger or executable block), the value of
LOCALTIME
will remain constant every time it is read. If multiple modules call or trigger each other, the value will remain constant throughout the duration of the outermost module. If you need a progressing value in PSQL (e.g. to measure time intervals), use Section 11.14, “'NOW'
”.
Examples
|
select localtime from rdb$database
|-- returns e.g. 14:20:19.0000
|
|select localtime(2) from rdb$database
|-- returns e.g. 14:20:23.1200
See alsoSection 11.4, “CURRENT_TIME
”, Section 11.12, “LOCALTIMESTAMP
”