Sql server 2005 &引用;类型日期不是已定义的系统类型。”;

Sql server 2005 &引用;类型日期不是已定义的系统类型。”;,sql-server-2005,sql-server-2008,Sql Server 2005,Sql Server 2008,我的网站在本地运行得很好,但在主机上却不行。 我在本地使用MSSQL 2008编写了我的查询,但我们的托管公司使用的是2005 有什么解决办法吗? 编辑:使用DateTime而不是Date看起来像解决方案,谢谢。 如果有人遇到这样的问题,我就用这个查询代替日期类型来解决问题 CONVERT(VARCHAR, GETDATE(),104) Output -> 15.03.2011 将数据库更改为使用日期时间而不是日期。SQL Server 2005支持该列类型,而Date不支持。是200

我的网站在本地运行得很好,但在主机上却不行。 我在本地使用MSSQL 2008编写了我的查询,但我们的托管公司使用的是2005
有什么解决办法吗?
编辑:使用
DateTime
而不是
Date
看起来像解决方案,谢谢。 如果有人遇到这样的问题,我就用这个查询代替日期类型来解决问题

CONVERT(VARCHAR, GETDATE(),104) Output -> 15.03.2011 

将数据库更改为使用日期时间而不是日期。SQL Server 2005支持该列类型,而Date不支持。

是2008年引入的新数据类型。它在2005年不可用。

因为日期列在Sql Server 2005中不可用,所以您有两个选择:

1) 请您的主机公司使用Sql Server 2008(或选择另一台使用Sql Server 2008的主机)


2) 在2005中使用DateTime列而不是Date

,每次运行时间为上午12:00,这将允许时间维度匹配

SELECT DATEADD(dd, 0, DATEDIFF(dd, 0, GETDATE()))
要去除“时间”,请使用以下内容:

CAST(CONVERT(varchar(20), enteredDate, 101) AS DateTime) AS 'enterDate'

这将导致你的时间值为12:00时是默认的,你可以有效地考虑为<代码> null <代码> .< /P>其他版本<代码>选择CAST(DATEDIFF(DD,0,GETDATE())作为DATETIME)< /代码> SHIVE,我使用了<代码>日期时间< /C>。它会给出同样的结果吗?