У меня есть столбец varchar в БД с датами.В C # с помощью SQL Select я пытаюсь преобразовать строку (пример: '10 апреля 2009 г.) (MMM-dd-гггг) в дату и время, но дает:
varcharтип данных для типа данных datetime привел к значению, выходящему за пределы допустимого диапазона.
Я понимаю, что это должен быть месяц с 3 символами, но не уверен, какой метод преобразования мне нужен для этого.
Примечание. Это старая устаревшая БД, которую я унаследовал.Я был поражен плохим выбором типов полей varchar для этих значений даты вместо datetime.
SELECT convert(datetime, dbo.EffectiveDate, 100) from Employees
или
SELECT convert(datetime, dbo.EffectiveDate) from Employees
происходит из примера: SELECT convert(datetime, 'Oct 23 2012 11:01AM', 100)
или
SELECT convert(datetime, 'Oct 23 2012 11:01AM')
, хотя значения полей не включают временную часть, я попробовал их
Таблица сотрудников:
Поле EffectiveDate varchar
12.12.2006
24 октября 2006 г.
..
..
и т. Д.
Есть предложения?