程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了``在'OFFSET'附近的语法不正确'.modift sql comm 2012 to 2008大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决``在'OFFSET'附近的语法不正确'.modift sql comm 2012 to 2008?

开发过程中遇到``在'OFFSET'附近的语法不正确'.modift sql comm 2012 to 2008的问题如何解决?下面主要结合日常开发的经验,给出你关于``在'OFFSET'附近的语法不正确'.modift sql comm 2012 to 2008的解决方法建议,希望对你解决``在'OFFSET'附近的语法不正确'.modift sql comm 2012 to 2008有所启发或帮助;

如注释中所发现的,导致该错误的原因是@R_937_9674@ Server 2008不支持它。您可以尝试根据sql Server 2012更改查询。

像这样的东西:

SELECT column1
FROM   (
          SELECT column1, ROW_numbER() OVER (ORDER BY COLUMN_ID) AS x
          FROM   @R_607_11174@able
       ) AS tbl
WHERE  tbl.x betweeN 20 AND 30

在您的代码中:-

SELECT * FROM  
(SELECT ROW_numbER() OVER(ORDER BY q.qID) AS rownumber 
FROM tblQuestion AS q 
INNER JOIN tblUser AS u ON q.uID = u.uID 
INNER JOIN tblQuestioncategory AS qcat ON q.qcatID = qcat.qcatID ) as somex 
WHERE  somex.rownumber  betweeN 11 AND 20

问题是因为您尚未定义@page

试试这个(因为您还没有提到什么@page。我将其视为某个常量,或者您可以声明它,然后为其设置值):-

declare @pagE int
set @page = 5  // You may set any value here.

SELECT q.qtitle, q.qDescription, q.qCreatedOn, u.uCode, 
u.uFullname, qcat.qcattitle, q.qID, q.qStatus 
FROM tblQuestion AS q 
INNER JOIN tblUser AS u ON q.uID = u.uID 
INNER JOIN tblQuestioncategory AS qcat ON q.qcatID = qcat.qcatID 
WHERE (q.qStatus = 1) 
ORDER BY q.qCreatedOn DESC 
OFFSET (@page*10) ROWS
FETCH NEXT 10 ROWS ONLY

解决方法

我为此列出了问题

SELECT q.qtitle,q.qDescription,q.qCreatedOn,u.uCode,u.uFullname,qcat.qcattitle,q.qId,q.qStatus 
FROM tblQuestion AS q INNER JOIN tblUser AS u 
ON q.uId = u.uId INNER JOIN tblQuestionCategory AS qcat 
ON q.qcatId = qcat.qcatId 
WHERE (q.qStatus = 1) 
ORDER BY q.qCreatedOn DESC 
OFFSET @page*10 ROWS FETCH NEXT 10 ROWS ONLY

但是我的服务器有问题,

Incorrect syntax near 'OFFSET'.
Invalid usage of the option NEXT in the FETCH statement.

如何修改SQL Server 2008的查询?

有一个问题。如何编写用于列出页面的存储过程?这是我的完整代码http://codepaste.net/gq5n6c

答案:http://codepaste.net/jjrkqr

大佬总结

以上是大佬教程为你收集整理的``在'OFFSET'附近的语法不正确'.modift sql comm 2012 to 2008全部内容,希望文章能够帮你解决``在'OFFSET'附近的语法不正确'.modift sql comm 2012 to 2008所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。