<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Decode360's Blog

    業精于勤而荒于嬉 QQ:150355677 MSN:decode360@hotmail.com

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理 ::
      302 隨筆 :: 26 文章 :: 82 評論 :: 0 Trackbacks
    ??? 今天在工作中發現一個問題,同樣的代碼在同事的機子上可以執行,在我的機子上報錯。
    ??? 做了一些簡化之后的SQL代碼如下:
    ?
    ??? SQL > select to_date(to_char(last_day(add_months(sysdate,-1)),'YYYY-MM-DD')) from dual;
    ?????????????????? *
    ??? ERROR at line 1:
    ??? ORA-01861: literal does not match format string
    ?
    ?
    ?
    ??? ****************************************************
    ?
    ??? 后來請教別人,發現應該是date類型的默認格式的問題。在同事機子上的默認格式本身就是'YYYY-MM-DD'的,所以在to_date函數后面,對'YYYY-MM-DD'格式的char無需再指定date格式類型,但是如果char格式與默認不一致,則會報錯。
    ?
    ??? date類型的默認格式由啟動參數 nls_date_format 指定
    ?
    ??? SQL > select * from nls_database_parameters where PARAMETER = 'NLS_DATE_FORMAT';
    ???
    ??? PARAMETER????????????VALUE
    ??? ---------------????? ----------------------
    ??? NLS_DATE_FORMAT????? DD-MON-RR
    ?
    ??? SQL > select sysdate from dual;
    ?
    ??? SYSDATE
    ??? -----------
    ??? 2008-NOV-05
    ?
    ??? 發現系統的默認NLS_DATE_FORMAT參數值為DD-MON-RR。
    ?
    ?
    ?
    ??? ****************************************************
    ?
    ??? 再查看當前DATABASE的該參數:
    ?
    ??? SQL > show parameter nls_date_format
    ???
    ??? NAME??????????????? TYPE??????? VALUE
    ??? ------------------- ----------- --------------------
    ??? nls_date_format?????string
    ?
    ??? 發現當前數據庫未設定該參數。
    ?
    ?
    ?
    ??? ****************************************************
    ?
    ??? 由于是系統的啟動參數,不能直接用alter database來修改,所以可以通過修改當前session來暫時實驗一下:
    ?
    ??? SQL > alter session set nls_date_format='yyyy-mm-dd';
    ?
    ??? Session altered.
    ?
    ??? SQL > select sysdate from dual;
    ?
    ??? SYSDATE
    ??? ----------
    ??? 2008-11-05

    ??? 再試一下之前的那段SQL
    ?
    ??? SQL > select to_date(to_char(last_day(add_months(sysdate,-1)),'YYYY-MM-DD')) from dual;
    ?
    ??? TO_DATE(TO
    ??? ----------
    ??? 2008-10-31
    ?
    ?
    ?
    ??? ****************************************************
    ?
    ??? 如果需要一直都這樣顯示,則可以 修改注冊表、添加環境變量、直接修改啟動參數文件
    ?
    ?
    ?




    -The End-

    posted on 2008-10-28 23:12 decode360-3 閱讀(334) 評論(0)  編輯  收藏 所屬分類: Oracle
    主站蜘蛛池模板: 无遮挡国产高潮视频免费观看| 亚洲一区二区三区夜色| 久久免费线看线看| 国产免费私拍一区二区三区| 欧洲 亚洲 国产图片综合| 无码人妻一区二区三区免费手机 | 免费黄色一级毛片| 国产精品亚洲精品| 毛片在线免费视频| 4338×亚洲全国最大色成网站| 综合偷自拍亚洲乱中文字幕| 国产在线观看免费视频播放器| 亚洲AV成人精品一区二区三区| 日韩免费电影在线观看| 色欲aⅴ亚洲情无码AV蜜桃| 国产在线观看免费完整版中文版| 亚洲人成网网址在线看| 久久亚洲精品无码av| 毛片免费观看的视频| 亚洲精品宾馆在线精品酒店| 香蕉高清免费永久在线视频| 国产成人亚洲综合在线| 亚洲一区二区三区在线播放| 在线涩涩免费观看国产精品| 精品日韩亚洲AV无码一区二区三区 | 亚洲最大激情中文字幕| 中文字幕免费在线播放| 亚洲成人在线网站| 国产卡一卡二卡三免费入口| 亚洲国产精品久久久久秋霞小| 午夜亚洲国产成人不卡在线| 国产成人无码免费看片软件| 亚洲国产精品久久久久久| 无码国产精品一区二区免费I6 | 亚洲精品国产手机| 精品国产一区二区三区免费看| 国产精品免费在线播放| 亚洲综合色一区二区三区小说| 午夜精品在线免费观看| 国产一级黄片儿免费看| 亚洲一级在线观看|