oracle的非法日期如何查看

发布时间 2023-03-27 23:45:10作者: 李行行

最近项目在搞国产化,Oracle是支持非法日期的,相信可能很多人都不知道,如果非法日期是字符串形式的,那么比较好检查到,但是如果非法日期是date类型的,我们如何查询呢?

有人可能首先会想到直接查询结果(起初我就是这么查询的)

不好意思,这种方式无法查询出来,这里的nls_date已经修改为yyyy-mm-dd hh24:mi:ss

 

那么我对日期转换成字符串是否能查询呢?

很不好意思,这种方式也没有办法查询出非法日期

 

那么如何在数据库中查询出非法日期呢?

其实虽然Oracle能存储非法日期,其实存入的日期的年月日0000-00-00这种模式的,知道如何存储的,那么我们就知道如何查询了,截图如下

该表的非法日期还是比较多的,oceanbase数据库无法识别该非法日期,需要丢给业务测进行修改,把下面的语句直接丢给开发就可以啦,让开发人员进行修改。