본문 바로가기

RDMS/PostgreSQL

[PostgreSQL] 날짜 형식 검증 함수 - 컴도리돌이

728x90
728x90


 

페이지에서 데이터를 조회할때 날짜 형식에 맞지 않는 데이터로 인해서 페이지 에러가 발생할 때가 종종 존재합니다.

그럴 때마다 일일히 찾을 수 없기 때문에, 함수를 만들어서 편하게 사용하는 편입니다.

이번 포스팅에서는 보편적으로 사용할 수 있는 날짜 형식 검증 함수를 기록하려고 합니다.

 


반응형

 

입력받은 문자열 값이 null인 경우 false를 반환시킵니다. 그리고 입력받은 문자열을 date 형식으로 정상적으로 처리되면 true가 발생하게 되고, 만약 예외처리가 발생할 경우 false를 반환하게 될 것입니다. 

 

CREATE FUNCTION validation_check_date(str CHARACTER VARYING) RETURNS BOOLEAN AS
$$
BEGIN
	IF str is NULL THEN RETURN FALSE;
	END IF;
	PERFORM str::DATE;
	RETURN TRUE;
EXCEPTION WHEN OTHERS THEN RETURN FALSE;
END;
$$ LANGUAGE plpgsql;

SELECT validation_check_date('20230131'); -- true
SELECT validation_check_date('20230132'); -- false
SELECT validation_check_date('202301'); -- false
SELECT validation_check_date('2023113'); -- false
728x90
728x90