我有一个VARCHAR
,它保存以下格式的datetime
数据:
15/04/2014 16:05
我需要将其转换为datetime
(使用与以前完全相同的格式),但在转换时出现超出范围的错误:
CONVERT(DATETIME, @endDate, 108)
将nvarchar数据类型转换为datetime数据类型导致值超出范围。
有人能建议成功转换的最佳方式吗?请记住,我不能更改源格式,最终需要比较日期,看看它是否已经过了今天。
我认为您希望使用103而不是108作为最终参数。
请使用与语言/国家/地区无关的日期常数值
-- Independent constant (natural date)
DECLARE @END_DTE VARCHAR(20) = '20140415 16:05'
-- Show the result
SELECT CONVERT(DATETIME, @END_DTE, 108) AS FORMAT_DTE