在oracle中检查有效的日期格式

时间:2014-08-08 10:29:54

标签: oracle

在源表中,我们有4个日期字段列。 2列是DATE作为其数据类型,其他列是varchar2。我要检查的是日期字段的传入数据是否有效,如果没有,如果我们发现它的格式无效(除了dd / mm / yyyy)并且如果它像32/02/1999或34 /那么它应该被拒绝15/1999等。

请你给我一个sql查询来检查它。

由于

1 个答案:

答案 0 :(得分:0)

DECLARE
 in_txt  VARCHAR2; -- to be converted
 in_fmt_txt VARCHAR2 := 'DD-MON-YYYY';     -- optional format
BEGIN
     -- Try to convert in_txt to a DATE.  If it works, fine.
     RETURN     TO_DATE (in_txt, in_fmt_txt);
EXCEPTION     -- If TO_DATE caused an error, then this is not a valid DATE: return NULL
     WHEN OTHERS
     THEN
          RETURN NULL;
END ;
相关问题