我正在使用Microsoft SQL Server 2016(SP1-CU3)(KB4019916)。我有一个数据类型为datetime
和date
的列表。SQL:转换失败错误
我想插入使用此查询的datetime
价值,但我不断收到从字符串转换日期和/或时间时错误
转换失败。
我的代码:
INSERT INTO [mytable] ([Date1], [Date2], [Date3])
VALUES (CONVERT(DATETIME, '2017-09-22 20:31:48.000', 126),
CONVERT(DATE, '2017-09-22', 126),
CONVERT(DATETIME, '2017-09-23 04:07:46.000')
我曾经尝试都投以及转换并仍然得到同样的错误。
INSERT INTO [mytable]([Date1], [Date2], [Date3])
VALUES
(CAST('2017-09-22 20:31:48.000' AS DATETIME),
CAST('2017-09-22' AS DATE),
CAST('2017-09-23 04:07:46.000' AS DATETIME))
有人可以帮助我吗?
日期时间值的格式在你的varchar字符串中可能是你错误的原因。选择一种语言中性格式,以便任何sql服务器都能理解它。看到这里http://www.karaszi.com/SQLServer/info_datetime.asp#DtFormatsInput – GuidoG