bạn có thể tạo một hàm:
ví dụ:
FUNCTION is_valid_date_format (
p_format IN VARCHAR2 )
RETURN BOOLEAN IS
l_date VARCHAR2(100) := NULL;
BEGIN
l_date := TO_char( sysdate, p_format );
RETURN TRUE;
EXCEPTION
WHEN OTHERS THEN
RETURN FALSE;
END is_valid_date_format;
và sử dụng nó như thế này
IF is_valid_date_format('dd/mm/yyyy') THEN
hiện tại nó cũng sẽ cho phép các định dạng thời gian, tuy nhiên sẽ rất đơn giản nếu mở rộng nó để không cho phép một định dạng có chứa các định dạng không mong muốn, ví dụ:hh hh24 mi ss
bằng cách thêm:(có thể bạn sẽ muốn viết hoa chuỗi định dạng của mình trước)
IF INSTR(p_format,'HH')>0 OR INSTR(p_format,'HH24')>0
OR INSTR(p_format,'MI')>0 OR INSTR(p_format,'SS')>0 THEN
RETURN FALSE
END IF;