У меня есть столбец varchar
, который содержит дату в следующем формате
dd/mm/yyyy
Мне нужно преобразовать тип данных столбца в DATE
.Я использую следующий запрос
alter table [tblDocumentRevision]
alter column [RevisionDate] date null
, но я получаю сообщение об ошибке
Сообщение 241, Уровень 16, Состояние 1, Строка 1
Преобразование не выполнено при преобразовании даты и/ или время из символьной строки.
Оператор завершен.
Я уверен, что все значения имеют формат dd/mm/yyyy
.Так почему же это дает мне ошибку?
Затем я добавил новый столбец и попытался
UPDATE [tblDocumentRevision]
SET NewDate = convert(date,[RevisionDate],103)
WHERE ISDATE([RevisionDate]) = 1
Проверка на ISDATE() = 1
должна отфильтровывать те записи, которые не могут быть преобразованы в DATE
.
Тогда в столбце NewDate
есть только значения, в которых месяц и дата меньше или равны 12, а остальные равны нулю.Итак, я ясно вижу проблему с форматом dd/mm/yyyy
Может кто-нибудь помочь мне решить эту проблему?