30
 
05/09/2019

Función Oracle para validar si valor es tipo fecha o no

Función Oracle para validar si valor es tipo fecha o noCrear una función de Oracle que permite validar si un valor es de tipo fecha o no, poniendo en práctica un método de comparación utilizado para lograr el objetivo.

A través de la implementación de un código PL/SQL mostramos una forma de validar si un valor que es pasado como argumento a través de una función construída, resulta verdadero o falso si éste es de tipo fecha.

Dicha función consiste en tomar un valor de tipo VARCHAR2, que mediante una estructura condicional evalúa si dicho valor está comprendido entre las fechas "01/01/1900" y "31/12/9999". Si el resultado resulta ser cierto la función retornará "S", en caso contrario retornará "N".

El objetivo de la función es evaluar un valor como una fecha.

Esta función sólo requiere de un parámetro de tipo "VARCHAR2", que puede retornar dos valores de tipo CHAR ("S" ó "N").

Si este recurso te ha servido de ayuda recuerda que puedes apoyar mi trabajo realizando una contribución voluntaria a través de mi perfil de usuario de la página y/o puedes enviar tus comentarios a través del sistema de contacto.
CREATE OR REPLACE FUNCTION F_IS_DATE(p_date VARCHAR2)
RETURN CHAR
IS
/* ************************************************************************************
* Procedimiento: f_is_date
* Descripción: Determina si el valor Varchar2 pasado como argumento es un valor de tipo fecha.
* Parámetros: p_date valor a evaluar
* Retorna: v_date ("S" ó "N")
* *********************************************************************************
*/
v_date DATE ;
v_return CHAR := 'S';
BEGIN
BEGIN
v_date := TO_DATE (p_date, 'DD/MM/YYYY');
IF v_date NOT BETWEEN TO_DATE ('01/01/1900', 'DD/MM/YYYY')
AND TO_DATE ('31/12/9999', 'DD/MM/YYYY') THEN
v_return := 'N';
END IF;
EXCEPTION
WHEN OTHERS
THEN
v_return := 'N';
END;
RETURN v_return;
END F_IS_DATE;
/
Function created.

Consulta Lo+ Top de Base De Datos
Todos los titulares en un solo lugar...