字符串的长度为8。
例如
var:='20070403'
b := isdate(var);
if( b = true )then
else
end if
请问有这方面的函数马?

解决方案 »

  1.   

    写个函数里面调用to_date,然后用异常捕获  若是在TO_DATE的时候看是否报错  若不报错就不会进异常,若是报错就进异常
      

  2.   

    create   or   replace   function   isDate(sdate   in   varchar2)    
      return   boolean   is  
          Result   boolean;  
          vdate   DATE;  
      begin  
          SELECT   to_date(sdate,'yyyy-mm-dd')    
                  INTO   vdate   FROM   dual;  
          Result   :=   TRUE;  
          return(Result);  
      EXCEPTION      
      WHEN   OTHERS   THEN  
          Result   :=   FALSE;  
          return(Result);  
      end   isDate;
      

  3.   

    應該還要傳進入時間格式
    create   or   replace   function   isDate(sdate   in   varchar2,format in varchar2)
    ...
    SELECT   to_date(sdate,format)    
                  INTO   vdate   FROM   dual;