En Oracle Database, el SYSTIMESTAMP
La función devuelve la fecha del sistema, incluidas las fracciones de segundo y la zona horaria, del sistema en el que reside la base de datos.
El valor devuelto es del tipo TIMESTAMP WITH TIME ZONE
.
Sintaxis
La sintaxis es así:
SYSTIMESTAMP
Por lo tanto, no se requieren (o aceptan) argumentos, y no hay paréntesis.
Ejemplo
He aquí un ejemplo:
SELECT SYSTIMESTAMP
FROM DUAL;
Resultado:
06/AUG/21 07:45:00.540362000 PM -04:00
Este ejemplo muestra la fecha según el valor del NLS_DATE_FORMAT
de mi sistema. parámetro (que actualmente es DD/MON/RR
). Podemos cambiar el NLS_DATE_FORMAT
parámetro, o use una función como TO_CHAR()
para devolver el resultado en un formato diferente.
Ejemplo:
SELECT TO_CHAR(SYSTIMESTAMP, 'YYYY-MM-DD HH24:MI:SS TZR')
FROM DUAL;
Resultado:
2021-08-06 19:48:43 -04:00
Llamar a SYSTIMESTAMP
con paréntesis
Como se mencionó, el SYSTIMESTAMP
la función se llama sin paréntesis.
Esto es lo que sucede cuando lo llamamos entre paréntesis:
SELECT SYSTIMESTAMP()
FROM DUAL;
Resultado:
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.