我有一个函数可以将字符串转换为datetime (101)
格式。
但是当我转换这个值时它给我一个错误。
2016-03-01 00:00:00.0000000
错误是
Msg 241, Level 16, State 1, Line 2
Conversion failed when converting date and/or time from character string.
我的功能是..
ALTER FUNCTION [dbo].[ConvertToDate]
(
@Value nVarchar(MAX)
)
RETURNS DATETIME
AS
BEGIN
IF (@Value <> NULL OR @Value <> '')
BEGIN
DECLARE @dt DATETIME
SET @dt = CONVERT(DATETIME,@Value,101)
--SET @dt = CAST(@Value AS DATETIME(101))
RETURN @dt
END
RETURN NULL
END
问题是什么?
最佳答案
您的数据有问题。它没有转换。 你的数据应该是这样的
'2016-03-01 00:00:00.0000000'
但是你可以这样改变你的数据
'2016-03-01 00:00:00.000'
关于sql - 从 sql server 中的字符串转换日期和/或时间时转换失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30837771/