DBeaver/Oracle错误的日期时间模式在结尾处包含.0

wwtsj6pe  于 2023-06-29  发布在  Oracle
关注(0)|答案(2)|浏览(509)

使用DBeaver和Oracle,select querys以错误的格式显示日期,其中总是在末尾包含.0,如2019-05-17 16:10:47.0。
要更新/插入表中的任何日期列,在DBeaver编辑器上,我尝试的日期模式无关紧要,抛出:ORA-01861:文字与格式字符串不匹配

SELECT sysdate FROM dual
-- returns date with .0: 2019-05-17 17:21:11.0

SELECT TO_CHAR(sysdate, 'YYYY-MM-DD HH24:MI:SS') FROM dual
-- returns ok: 2019-05-17 17:21:11

在Oracle SQL Developer上运行。
我也尝试从NLS_PARAMETERS中删除SSXFF,但似乎不起作用:

SELECT * FROM v$nls_parameters

--NLS_DATE_FORMAT   DD/MM/RR
--NLS_TIME_FORMAT   HH24:MI:SSXFF
--NLS_TIMESTAMP_FORMAT  DD/MM/RR HH24:MI:SSXFF
--NLS_TIME_TZ_FORMAT    HH24:MI:SSXFF TZR
--NLS_TIMESTAMP_TZ_FORMAT   DD/MM/RR HH24:MI:SSXFF TZR

alter session set NLS_TIME_FORMAT = 'HH24:MI:SS'
alter session set NLS_TIMESTAMP_FORMAT = 'DD/MM/RR HH24:MI:SS'
alter session set NLS_TIME_TZ_FORMAT = 'HH24:MI:SS TZR'
alter session set NLS_TIMESTAMP_TZ_FORMAT = 'DD/MM/RR HH24:MI:SS TZR'

环境:Windows 10 Oracle Database 12 c 12.2.0.1.0 - 64位DBeaver 6.0.3驱动程序OJDBC 7

nbewdwxp

nbewdwxp1#

确保在DBeaver首选项>数据格式>“禁用日期/时间格式”选项中未选中。
这允许在插入/更新操作中使用客户端格式。

n1bvdmb6

n1bvdmb62#

在连接设置>驱动程序属性中,将oracle.jdbc.mapDateToTimestamp更改为FALSE。Connection settings

相关问题