有两种解决方法可以尝试:
- 确保日期格式正确:如果您正在将 nvarchar 转换为 datetime,则必须使用正确的日期格式。例如,如果 nvarchar 列包含日期时间字符串“2019-10-01 12:00:00 AM”,则将其转换为 datetime 应该使用以下格式:“yyyy-MM-dd hh:mm:ss tt”。
示例代码:
SELECT CONVERT(datetime, '2019-10-01 12:00:00 AM', 120)
- 修改日期值:如果您确定日期格式无误,则可能需要检查日期值本身。例如,如果 nvarchar 列包含值“2019-10-01 25:00:00”,则无法将其转换为 datetime。在这种情况下,您可以尝试修改值或使用其他方法进行转换。
示例代码:
SELECT CONVERT(datetime, REPLACE('2019-10-01 25:00:00', '25', '01'), 120)