Используя DBeaver и Oracle, запросы select отображают дату в неправильном формате, который всегда включает .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.
Я также пытался удалить SSXFF из NLS_PARAMETERS, но, похоже, не работает:
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 12c 12.2.0.1.0 — 64-разрядная версия DBeaver 6.0.3 Драйвер OJDBC7
Alter session set nls_date_format = 'YYYY-MM-DD HH24:MI:SS'
для установки формата даты по умолчанию в функции TO_CHAR. Кажется, DBeaver неправильно задал этот параметр. - person krokodilko   schedule 18.05.2019Alter session set nls_date_format = '...'
ничего не меняет. - person Jean Augusto   schedule 04.06.2019