CREATE OR REPLACE FUNCTION is_number(v_str_number IN varchar2)
RETURN NUMBER
IS /* 데이터가 number 형인지 검사하는 함수임. 1 이 나오면 NUMBER 형임 */
V_NUM NUMBER;
BEGIN
V_NUM := TO_NUMBER(v_str_number);
RETURN 1;
EXCEPTION
WHEN OTHERS THEN RETURN 0 ;
END;
CREATE OR REPLACE FUNCTION is_date(v_str_date IN varchar2, V_FORMAT IN VARCHAR2 DEFAULT 'YYYYMMDD')
RETURN NUMBER
IS /* 데이터가 DATE 형인지 검사하는 함수임. 1 이 나오면 DATE 형임 */
V_DATE DATE;
BEGIN
V_DATE := TO_DATE(v_str_date, V_FORMAT);
RETURN 1;
EXCEPTION
WHEN OTHERS THEN RETURN 0 ;
END;
출처: http://scidb.tistory.com/entry/오라클에서-isnumber-isdate-함수-사용하기 [Science of Database]