0

我有一个表格,其中有一varchar列以下一种格式表示日期和时间:

dd/MM/yy hh:mm

例如:27/01/13 07:57

我需要将此列转换为DateTime类型。

我试图做到这一点但没有成功。

假设@varcharDT包含VarCharDateTime 并且我想将转换后的值插入到@dateTimeDT变量中。

DECLARE @varcharDT varchar(1000)
SELECT @varcharDT = dateTimeColumn from dbo.tempTable

--Trying to convert
DECLARE @dateTimeDT DateTime
SET @dateTimeDT= CONVERT (DATETIME, @varcharDT )

最后一行引发了下一个异常:

从字符串转换日期和/或时间时转换失败。

我认为转换失败是因为我的VarCharDateTime 是自定义格式。

我该如何解决?

我正在使用 SQL Server 2008 R2

谢谢

4

1 回答 1

0

尝试:

CONVERT(datetime, @varcharDT, 3)

最后一个数字是转换的样式。该列表可在 MSDN 文档文章CAST and CONVERT (Transact-SQL)中找到。

于 2013-01-27T08:29:43.080 回答