You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle中如何正确插入0001年时间数据?解决RR格式转为2001年问题

问题原因

你使用的RR是Oracle针对两位年份设计的兼容格式符,会自动匹配世纪位:年份后两位为0-49时默认归属21世纪,50-99时归属20世纪。你输入的0001年被RR格式取后两位01,因此自动判定为2001年。

解决方案

将to_timestamp函数中的年份格式符RR替换为YYYY即可,YYYY会严格匹配四位年份,不会自动补全世纪位。

修正后的SQL语句如下:

UPDATE table1
SET 
datblock = to_timestamp('01/01/0001 00:00:00,000000000','DD/MM/YYYY HH24:MI:SSXFF')

如果你的datblock字段为DATE类型,也可以对应使用to_date函数执行更新,格式符规则保持一致即可。


内容的提问来源于stack exchange,提问作者user1187282

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 04:54:01