在DB參數設定檔,發現 nls_date_format 被設定為 'DD-MON-RR',而不是 'DD-MM-YY' 之類。查看 Oracle 官方網站 [1]時,不得不驚訝這是當初千禧年蟲蟲危機所遺留下來的毒害。若日期為 '1-JAN-00' 那代表的是那一年? 1900 年 或是 2000 年? 在這之前 coding 儘量節省欄位,年份只保留後 2 位數字並不為過。然而,沒想到恐龍商業軟體仍然存在 (尤其是 COBOL 商業軟體),在堪用與好用的考量下,除掉這蟲蟲成了 2000 年前的大事。這也是當年程式設計者始料未及。 參考 1. OLAP DML REFERENCE, DATE_FORMAT, https://docs.oracle.com/cd/B28359_01/olap.111/b28126/dml_commands_1029.htm#OLADM780
“Those who are in love with practice without knowledge are like the sailor who gets into a ship without rudder or compass and who never can be certain [where] he is going. Practice must always be founded on sound theory.” by Leonardo da Vinci
2014年11月10日 星期一
【Oracle 筆記 】Oracle Date Format - RR ?
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言