oracle的interval用法特例

regonly1發表於2009-01-22

這裡說的這種情況發生在oracle對在現有日期上加N個月後,如果,得出的這個月的最後一天沒有現有日期的最後一天,則會出現ora-30089錯誤。
如:
SQL> select date'2009-01-31' + interval'1'month from dual ;
 
select date'2009-01-31' + interval'1'month from dual
 
ORA-01839: date not valid for month specified

SQL> select date '2009-01-31' + interval'2' month  from dual ;
 
DATE'2009-01-31'+INTERVAL'2'MO
------------------------------
2009-3-31
以上例子顯示了該種情況,網上有人說這是bug,不知道Oracle怎麼解釋的。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12932950/viewspace-543072/,如需轉載,請註明出處,否則將追究法律責任。

相關文章