我的网站在本地工作,但不在主持人工作。
我在本地用MSSQL 2008写了我的查询,但我们的托管公司用2005年
任何解决方案?
编辑:使用DateTime而不是Date看起来像解决方案谢谢。
如果有人遇到这样的问题我使用此查询而不是DATE类型解决了我的问题。
CONVERT(VARCHAR,GETDATE(),104)输出 - > 15.03.2011
答案 0 :(得分:17)
由于日期列在Sql Server 2005中不可用,因此您有两种选择:
1)要求您的托管公司使用Sql Server 2008(或选择其他主机)
2)使用DateTime列而不是Date
答案 1 :(得分:8)
DATE是2008年推出的一种新数据类型。它于2005年推出。
答案 2 :(得分:7)
SELECT DATEADD(dd, 0, DATEDIFF(dd, 0, GETDATE()))
答案 3 :(得分:1)
将数据库更改为使用Datetime而不是Date。 SQL Server 2005支持该列类型,而Date不支持。
答案 4 :(得分:0)
2005年每次运行时间为凌晨12:00,这将允许时间维度匹配。
剥离“时间”使用这样的东西:
CAST(CONVERT(varchar(20),enteredDate,101)AS DateTime)AS'enterDate'
这将导致您的时间值为12:00:00 AM,这是默认值,您可以有效地将其视为“null”。