Я хочу, чтобы дата с типом данных varchar(255)
, как показано ниже, была преобразована в формат datetime
или date
05 jun 2007
Когда я использую приведение с datetime или date:
UPDATE [dbo].[SSIS_TempDump_Episode_Numbers]
SET DischargeDate = CAST([Discharge date] as Date)
Я получаю такую ошибку:
Сообщение 241, Уровень 16, Состояние 1, Строка 1
Ошибка преобразования при преобразовании даты и / или времени из строки символов.
Или изменить столбец дает тот же результат. это из-за формата даты?
2 ответа
Select CONVERT(datetime,'05 jun 2007') -->'2007-06-05 00:00:00.000'
DECLARE @foo VARCHAR(255)
SET @foo = '05 jun 2007'
PRINT CONVERT(DATETIME,@foo)
Похожие вопросы
Новые вопросы
sql-server
Microsoft SQL Server — это система управления реляционными базами данных (RDBMS). Используйте этот тег для всех выпусков Microsoft SQL Server, включая Compact, Express, Azure, Fast-track, APS (ранее PDW) и Azure SQL DW. Не используйте этот тег для других типов СУБД (MySQL, PostgreSQL, Oracle и т. д.). Не используйте этот тег для вопросов по программному обеспечению и разработке мобильных устройств, если только он не связан напрямую с базой данных.
[Discharge date]
типомvarchar
, который представляет дату в формате05 jun 2007
?