如何在Xquery中验证日期

时间:2014-12-02 11:05:20

标签: validation date xquery

如果我有YYYYMMDD格式的日期如何在Xquery版本“1.0”中验证,那么它检查月份和年份是否有效,如果说它们有效,那么月份为02的闰年可以有一个日期29否则最多28。

Oracle融合中间件等多种集成工具实现了Xquery版本“1.0”而不是“3.0”

1 个答案:

答案 0 :(得分:1)

首先,尽管您的用例相当简单:通常避免自行篡改日期(尤其是时间),并始终依赖已经实现的功能handling date and time is horribly complicated if you want to do it right

将字符串转换为XQuery的日期函数能够解析的表示形式。如果你可以从字符串构造一个日期,它是有效的;如果发生错误,则无效。可以使用xs:date($string)构建日期。转换字符串的一种方法是使用substring(...)string-join(...)

  xs:date(string-join((substring($date, 1, 4), substring($date, 5, 2), substring($date, 7, 2)), '-'))

要捕获错误,请使用try/catch block