一、问题描述
在一次SQL发布,脚本里的日期格式:‘15-11月-22 10.25.53.000000000 上午’,在执行的时候报错:ORA-01843: not a valid month
SQL> select to_timestamp('15-11月-22 10.25.53.000000000 上午','DD-MON-RR HH.MI.SSXFF AM') from dual;
select to_timestamp('15-11月-22 10.25.53.000000000 上午','DD-MON-RR HH.MI.SSXFF AM') from dual
ORA-01843: not a valid month
二、解决
其实这个问题很经常会遇到,好记性不如烂笔头,于是写下来避免下次再到处找命令了。
- 查看nls_date_language,当前会话为英文格式
SQL> select * from nls_session_parameters where parameter='NLS_DATE_LANGUAGE';
PARAMETER VALUE
------------------------- ------------------------------------------------------
NLS_DATE_LANGUAGE AMERICAN
- 修改为中文格式:修改为会话级
SQL> ALTER SESSION SET nls_date_language='SIMPLIFIED CHINESE';
Session altered
- 再执行正常输出
SQL> select to_timestamp('15-11月-22 10.25.53.000000000 上午','DD-MON-RR HH.MI.SSXFF AM') from dual;
TO_TIMESTAMP('15-11月-2210.25.53.000000000上午','DD-MON-RRHH.MI.SSXFFAM')
--------------------------------------------------------------------------------
2022-11-15 10:25:53.000000000
三、来自网上脚本使用个例:
- 英文:
SELECT TO_CHAR(sysdate,
'MM/DD/YYYY HH:MI AM',
'NLS_DATE_LANGUAGE = American')
FROM DUAL;
TO_CHAR(SYSDATE,'MM
-------------------
11/28/2022 08:06 PM
- 日文:
SELECT TO_CHAR(sysdate,
'MM/DD/YYYY HH:MI AM',
'NLS_DATE_LANGUAGE = Japanese')
FROM DUAL;
TO_CHAR(SYSDATE,'MM/DD/
-----------------------
11/28/2022 08:06 午後
- 中文:(特别注意NLS_DATE_LANGUAGE多两个单引号)
SELECT TO_CHAR(sysdate,
'MM/DD/YYYY HH:MI AM',
'NLS_DATE_LANGUAGE = ''SIMPLIFIED CHINESE''')
FROM DUAL;
TO_CHAR(SYSDATE,'MM/DD/
-----------------------
11/28/2022 08:05 下午

文章推荐
– 故障
《Oracle_索引重建—优化索引碎片》
《Oracle 自动收集统计信息机制》
《DBA_TAB_MODIFICATIONS表的刷新策略测试》
《FY_Recover_Data.dbf》
《Oracle RAC 集群迁移文件操作.pdf》
《Oracle Date 字段索引使用测试.dbf》
《Oracle 诊断案例 :因应用死循环导致的CPU过高》
《记录一起索引rebuild与收集统计信息的事故》
《RAC DG删除备库redo时报ORA-01623》
《问答榜上引发的Oracle并行的探究(一)》
《问答榜上引发的Oracle并行的探究(二)》
《DG 同步延迟之奇怪的经典报错:ORA-16191》
– 等待事件
《log file sync》 等待事件问题分析汇总
《ASH报告发现:os thread startup 等待事件分析》
– 监控&脚本
《DG standby time 监控脚本部署》
《Oracle 慢SQL监控脚本》
《Oracle 慢SQL监控测试及监控脚本.pdf》
《oracle 监控表空间脚本 每月10号0点至06点不报警》
《Oracle 脚本实现简单的审计功能》
– 安装系列
《ORACLE_19C_linux安装.pdf》
《Oracle 19c-手工建库.pdf》
《19c单库升级19.11补丁.pdf》
《19c_rac补丁《19.11-p32841500》.pdf 》
《oracle_图形-单实例11.2.0.4升级19.3.pdf》
《oracle_11.2.0.3升级11.2.0.4–单实例升级.pdf》
《oracle_静默-单实例 11.2.0.4升级19.3.pdf》
《CentOS_6.7系统一步一步 RAC 11.2.0.4升级19.3.pdf》
《整理后_RAC_11.2.0.4升级19c.pdf》
欢迎赞赏支持或留言指正




