Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/300.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 正在从sqlserver获取顶部(起始编号、结束编号)行_C#_Asp.net_Sql_Sql Server_Sql Server 2008 - Fatal编程技术网

C# 正在从sqlserver获取顶部(起始编号、结束编号)行

C# 正在从sqlserver获取顶部(起始编号、结束编号)行,c#,asp.net,sql,sql-server,sql-server-2008,C#,Asp.net,Sql,Sql Server,Sql Server 2008,我在asp.net页面中使用网格视图,从SQL Server获取数据并将其放置在网格视图中 现在我的问题是,我使用分页,在网格视图中每页放置50行。我想在启动时从数据库中获取前50行并绑定到网格视图,当我单击下一页时,再次转到数据库并获取第二个前50行并绑定到GV。这个过程必须继续,直到从数据库中取出最后一行 您能告诉我如何编写查询以实现此目的吗???通常,您将向此查询传递两个参数@pageNum和@pageSize,然后您可以执行以下操作: With ranked AS --- Or yo

我在asp.net页面中使用网格视图,从SQL Server获取数据并将其放置在网格视图中

现在我的问题是,我使用分页,在网格视图中每页放置50行。我想在启动时从数据库中获取前50行并绑定到网格视图,当我单击下一页时,再次转到数据库并获取第二个前50行并绑定到GV。这个过程必须继续,直到从数据库中取出最后一行


您能告诉我如何编写查询以实现此目的吗???

通常,您将向此查询传递两个参数@pageNum和@pageSize,然后您可以执行以下操作:

With ranked AS   --- Or you can make it a view
(
   SELECT ROW_NUMBER() OVER(ORDER BY OrderField) AS RowNum,  * 
   FROM YourTableReference
)
SELECT *   --Your fields here
FROM Ranked
WHERE RowNum BETWEEN ((@PageNum - 1) * @PageSize + 1)
                 AND (@PageNum * @PageSize)
ORDER BY SomeField

阅读有关SQL分页的更多信息,有几种方法可以创建存储过程

sp_fetcrangeofrecords
@st int,
@ed int

As
BEGIN
WITH CTE as (select row_number() over (order by (select 0)) as rn,* from your table)

select col1,col2,... from table where rn between @st and @ed
END
试一下,你就会知道怎么做


也会有所帮助。

关键字“BETWEEN”附近的语法不正确我不使用SQL Server2008@KrishnaThota,它应该不会出错,请检查语法。你也可以看到一个现场演示,看看我的编辑。;以RowNums为参数,选择ROW_NUMBER OVERORDER BY Order_Date DESC为RowNum,*从@tbl SET@MaxPageSize=选择CEILINGCASTMAXRowNum为FLOAT/CAST@PageSize作为RowNums的FLOAT,为什么这不可能??它在关键字附近返回不正确的语法SET@KrishnaThota不能在定义CTE后设置变量。试着在定义CTE之前设置这个变量。有很多次,很多次,很多次。请阅读这些评论及其引用的文章: