【发布时间】:2023-04-08 09:27:01
【问题描述】:
我在尝试以varchar 格式将以下整数转换为datetime 时遇到此错误。
从字符串转换日期和/或时间时转换失败
代码:
CONVERT(VARCHAR(MAX), CAST('200901041421' AS DATETIME))
【问题讨论】:
标签: sql-server datetime select ssms-2012
我在尝试以varchar 格式将以下整数转换为datetime 时遇到此错误。
从字符串转换日期和/或时间时转换失败
代码:
CONVERT(VARCHAR(MAX), CAST('200901041421' AS DATETIME))
【问题讨论】:
标签: sql-server datetime select ssms-2012
您需要一个空格和一个冒号。我不确定您为什么要这样做...在前端(表示层)上以某种格式显示日期并将日期存储为数据库中的日期或日期时间,您不会遇到此问题: )
SELECT CONVERT(VARCHAR(MAX), CAST('20090104 14:21' AS DATETIME))
另外,这里不需要使用MAX。那是浪费存储。这样的事情更有意义。
SELECT CONVERT(VARCHAR(24), CAST('20090104 14:21' AS DATETIME), 113)
使用列名...
SELECT CONVERT(VARCHAR(24), CAST(YourColumnName AS DATETIME), 113)
FROM YourTable
【讨论】: