2011-11-23 2 views
0

У меня есть столбец Nvarchar в таблице базы данных, который содержит значения даты. Дата значения сохраняются в двух форматахAlter sql Формат данных таблицы

2008-05-20 
22/04/2011 

Теперь мне нужно, чтобы преобразовать этот столбец в date колонке. Когда я попробовать следующий запрос:

set dateformat dmy 
    alter table tblDocumentRevision 
    alter column RevisionDate date 

возвращает ошибку:

Msg 241, Level 16, State 1, Line 2
Conversion failed when converting date and/or time from character string.
The statement has been terminated.

Пожалуйста, помогите мне решить эту

+1

вам, вероятно, потребуется написать больше кода, чем это; или даже задача SSIS .... –

+0

'2008-05-20' на самом деле не такой синтаксис, как' dmy' – rabudde

+1

Нет, по моим сведениям, вам нужно добавить новый столбец с Datatype DATE и сделать запрос к скопируйте все данные из существующего столбца в новый столбец в формате одиночной даты, а затем удалите старый столбец и переименуйте имя нового столбца в старое имя. –

ответ

2

Обновить строку даты в таблице, так что все они имеют (тот, который SQL-сервер может отбрасывать), прежде чем вы измените тип на DateTime.

Смежные вопросы