我知道SQL Server 2012中引入了OFFSET FETCH CLAUSE。我安装了SQL Server 2012,并创建了一个兼容级别的数据库(SQL Server 2008)。
然后我尝试了这个查询:
SELECT *
FROM sys.objects
ORDER BY name
OFFSET 10 ROWS
FETCH NEXT 20 ROWS ONLY
上面的查询返回20行。 OFFSET FETCH CLAUSE
如何在SQL Server 2008 R2中运行?
我在SQLfiddle中尝试过选择SQL SERVER 2008
http://sqlfiddle.com/#!3/b3799/1,它也适用于此。
我在互联网上浏览了它,但截至目前我没有找到任何解决方案。这是因为2012年的实例吗?有没有办法让2012实例数据库只执行SQL Server 2008查询?(通过任何其他设置,如果有的话)
答案 0 :(得分:0)
您使用的是从SQL Server 2008 R2获取的备份数据库,但您当前的服务器是SQL Server 2012.
与2008兼容,2012年可用的功能也可用于您的数据库。
注意:数据库备份没有向后兼容性,即在SQL Server 2008中无法还原SQL Server 2012中的数据库备份。