[Message]
SELECT CONVERT(VARCHAR(19), CONVERT(DATETIME, 'Feb 13 2025 12:50PM', 109), 120) AS FormattedDate;运行后提示:当前命令期间出错(完成状态 0)。从字符串转换日期和/或时间时,转换失败。
SET DATEFORMAT MDY; -- 设置日期格式为月-日-年 SELECT CONVERT(VARCHAR(19), CONVERT(DATETIME, 'Feb 13 2025 12:50PM'), 120);
若是仍然提示错误,可能是因为 SQL Server 的语言环境设置不支持 `Feb` 这样的英文月份缩写。可以通过设置 `SET LANGUAGE` 来切换到英语环境:
方法二:
SET LANGUAGE English; SELECT CONVERT(VARCHAR(19), CONVERT(DATETIME, 'Feb 13 2025 12:50PM'), 120);
注意:使用 SET LANGUAGE English; 语句可以临时将当前会话的语言环境设置为英语,从而确保 SQL Server 能够正确解析英文月份缩写(如 Feb)和时间格式。这种方法在处理特定格式的日期时间字符串时非常有效,但它只会影响当前会话,不会对服务器的原始配置产生任何持久性影响。