Столбец даты не имеет удобочитаемого формата; существует внутреннее представление, и клиент решает, как отобразить результаты (обычно на основе NOS_DATE_FORMAT), если только вы явно не отформатируете столбец в своем запросе с to_char()
.
Но все таблицы, данные которых тип Дата была изменена в базе данных
Нет, ваш клиент использует этот параметр для отображения дат в виде форматированных строк. В базе данных изменился Notign.
Так есть ли решение, которое может изменить один тип даты таблицы вместо всей базы данных?
Нет, вы не можете установить формат для столбец в таблице - это просто даты.
Все, что вы можете сделать, это явно отформатировать как часть вашего запроса; каждая дата может быть отформатирована по-разному. Скорее надумано, но для демонстрации:
alter session set nls_date_format = 'DD-Mon-RR';
select
timestart,
timeend,
to_char(TIMESTART, 'YYYY-MM-DD HH24:MI:SS') as timestart_2,
to_char(TIMEEND, 'FMDay DD/Mon/YYYY HH:MI AM', 'NLS_DATE_LANGUAGE=ENGLISH') as timeend_2
from EVENTPLANLINE;
TIMESTART TIMEEND TIMESTART_2 TIMEEND_2
--------- --------- ------------------- ---------------------------
25-Oct-18 25-Oct-18 2018-10-25 08:00:00 Thursday 25/Oct/2018 5:0 PM
Если формат результата имеет значение, не полагайтесь на форматы NLS, поскольку кто-то другой, выполняющий ваш код, может иметь другие настройки в своем сеансе. (И как примечание, не полагайтесь на неявное преобразование строк в даты - вас здесь нет, но они часто go вместе ...)