Преобразование столбца varchar в столбец даты в Oracle - PullRequest
0 голосов
/ 08 марта 2012

Мне нужно изменить тип столбца с VARCHAR2 на DATE. Столбец уже хранит даты в правильном формате. Поэтому я пытался сделать что-то вроде этого

alter INM_INCIDENT rename column INM_I_REACTION_TIME to INM_I_REACTION_TIME_OLD;
alter table INM_INCIDENT add INM_I_REACTION_TIME date;
update INM_INCIDENT set INM_I_REACTION_TIME = to_date(INM_I_REACTION_TIME_OLD);
alter table INM_INCIDENT drop column INM_I_REACTION_TIME_OLD;

Но у меня ошибка в строке с заявлением об обновлении, поэтому мой вопрос, есть ли какое-нибудь хорошее решение для копирования varchar на сегодняшний день, как это?

1 Ответ

4 голосов
/ 08 марта 2012

Обновление:

update INM_INCIDENT set INM_I_REACTION_TIME = to_date(INM_I_REACTION_TIME_OLD, 'YYYY-MM-DD HH24:MI:SS');

Вы должны настроить строку YYYY-MM-DD HH24:MI:SS в соответствии со своим форматом даты в столбце даты строки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...