我在存储过程中使用以下查询
SELECT @ICOUNT = COUNT(*)
FROM MESSAGES
WHERE CAST(CREATEDDATE AS DATE) >= CAST(@STARTDATE AS DATE)
AND CAST(CREATEDDATE AS DATE) <= CAST(@ENDDATE AS DATE);
它在Sql Server 2008中正常工作,而在Sql Server 2014中,我遇到以下错误:
类型DATE不是已定义的系统类型。
答案 0 :(得分:1)
如果兼容性级别为90,则表示您不使用SQL Server 2014,因为它不支持此兼容性级别(支持的最低级别为100)。
如果使用2012(支持兼容性级别90的最高版本),则应将兼容性级别更改为110。对于2008/2008 r2版本,最大兼容性级别为100。
使用alter database
更改兼容性级别:
ALTER DATABASE database_name
SET COMPATIBILITY_LEVEL = 110 -- or 100 for 2008 versions.