首批通过分布式安全可靠测评,为关键业务系统打造
更新表错误,错误代码 5641/ORA-01843
更新时间:2026-05-21 01:56
本文介绍对数据表进行更新时失败报 5641/ORA-01843 错误的处理方法。
适用版本
OceanBase 数据库所有版本
问题现象
对数据表进行更新失败,错误信息如下。其中 table_name 表示数据表的名称,date_column 表示日期列的名称。
obclient> UPDATE <table_name> SET <date_column>='2021-04-15';
ORA-01843: not a valid month
问题原因
需要使用正确的日期格式。
解决方式
查询当前 DATE 类型的日期格式。
可见此时数据库使用的默认日期类型为
DD-MON-RR,需要将2021-04-15转换为该日期格式表示。因此应当使用
15-APR-21。SHOW VARIABLES LIKE '%nls_date_format%'; +-----------------+-----------+ | VARIABLE_NAME | VALUE | +-----------------+-----------+ | nls_date_format | DD-MON-RR | +-----------------+-----------+ 1 row in set (0.01 sec)使用正确的日期格式更新数据表。
obclient> UPDATE <table_name> SET <date_column>='15-APR-21'; Query OK, 1 row affected (0.01 sec)