如何测试日期格式字符串是否为Oracle中的有效日期格式字符串

我希望用户能够输入日期格式字符串,以便他们可以指定他们希望如何显示/输入日期值.

如何验证此日期格式字符串,以便它们只能输入有效的Oracle日期格式字符串?

解决方法

你可以创建一个函数

例如:

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;

并像这样使用它

IF is_valid_date_format('dd/mm/yyyy') THEN

目前它也将允许时间格式,但是将它扩展为不允许包含不需要的格式的格式会很简单,例如:hh hh24 mi ss

通过添加:(您可能希望首先大写您的格式字符串)

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;

相关文章

Java Oracle 结果集是Java语言中处理数据库查询结果的一种方...
Java AES和Oracle AES是现代加密技术中最常使用的两种AES加密...
Java是一种广泛应用的编程语言,具备可靠性、安全性、跨平台...
随着移动互联网的发展,抽奖活动成为了营销活动中不可或缺的...
Java和Oracle都是在计算机领域应用非常广泛的技术,他们经常...
Java 是一门非常流行的编程语言,它可以运行于各种操作系统上...