将nvarchar(50)转换为datetime

时间:2014-09-24 22:23:18

标签: sql datetime sql-server-2005 nvarchar

我正在使用SQL Server 2005,并且我试图在Dimension表中将日期字段与数据匹配:

2012-01-06 00:00:00.000作为datetime 到一个临时表,其数据以nvarchar(50)的形式出现     2012-01-06 15:53:12.040 例如。我已经尝试了所有可以在搜索中找到的转换和强制转换但是得到了“将表达式转换为数据类型datetime的算术溢出错误”。错误信息。

我已经在临时表中手动更新了所有时间值以获得00:00:00.000时间戳,但问题仍然存在。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

您是否只是想更改整个列的数据类型?

如果是这样,试试这个

ALTER TABLE table_name
ALTER COLUMN column_name datetime

更多info

如果您只想修改查询,可以试试这个:

 SELECT convert (...look at link below for options... )

查看here了解更多信息。