存储过程分页的全套代码
aspx页面的代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.SqlClient;
namespace AspDotNet07_AjaxCRUD.View
{
public partial class WebForm1 : System.Web.UI.Page
{
public static int pageIndex=1;
public static int pageSize=10;
public static int pageCount;
public static int pageRowcount;
public static int tag = 0;
protected void Page_Load(object sender, EventArgs e)
{
tag++;
if (tag == 1)
{

//InitPage();

}

}
public void InitPage()
{
DataTable dt = new DataTable();
SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=db_EMS;Integrated Security=True");
SqlDataAdapter da = new SqlDataAdapter("kk", con);
//设置 命令类型 为存储过程
da.SelectCommand.CommandType = CommandType.StoredProcedure;
//设置 参数
da.SelectCommand.Parameters.AddWithValue("@pageIndex", pageIndex);//当前页码
da.SelectCommand.Parameters.AddWithValue("@pageSize", pageSize);//页容量

da.SelectCommand.Parameters.Add(new SqlParameter("@pageRowCount", SqlDbType.Int));//总行数
//在存储过程中 输出参数
da.SelectCommand.Parameters.Add(new SqlParameter("@pageCount", SqlDbType.Int));//总页数

//将后面两个参数 设置为 输出类型
da.SelectCommand.Parameters[2].Direction = ParameterDirection.Output;
da.SelectCommand.Parameters[3].Direction = ParameterDirection.Output;

//执行 并将查询到的 结果 赋给 数据表对象
da.Fill(dt);
//获得 存储过程 返回的 输出参数
pageCount = Convert.ToInt32(da.SelectCommand.Parameters[3].Value);
pageRowcount = Convert.ToInt32(da.SelectCommand.Parameters[2].Value);

GridView1.DataSource = dt.DefaultView;
GridView1.DataBind();

}

protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{

}

protected void Button1_Click(object sender, EventArgs e)
{
string s="aawwaafffffkkkkkb";
System.Text.StringBuilder sb = new System.Text.StringBuilder();
sb.Append(s);
cf(sb);
pageIndex++;
if (pageIndex > pageCount)
{
pageIndex--;
Response.Write("<script>alert('redy last page')</script>");
return;
}
InitPage();

}

private void cf(System.Text.StringBuilder sb)
{
Console.WriteLine(sb[0]);
}

protected void Button2_Click(object sender, EventArgs e)
{
pageIndex--;
if (pageIndex <1)
{
pageIndex++;
Response.Write("<script>alert('redy first page')</script>");
return;
}
InitPage();

}

protected void Button3_Click(object sender, EventArgs e)
{
Response.Redirect("WebForm2.aspx?id=33");

}
}
}
存储过程的代码
create proc imd
@pageIndex int,
@pageSize int,
@pageRowCount int output,
@pageCount int output
as
begin
select @pageRowCount=COUNT(id)*1.0 from dbo.t
select @pageCount=CEILING(@pageRowCount*1.0/@pageSize)
select * from
(
select *,ROW_NUMBER() over(order by id) as rownum from dbo.t

)as temp where temp.rownum between (@pageIndex-1)*@pageSize+1 and @pageIndex*@pageSize
end;
declare @cr int
declare @pr int
exec imd 2,10,@cr output,@pr output

数据分页c#的更多相关文章

  1. mysq大数据分页

    mysql limit大数据量分页优化方法 Mysql的优化是非常重要的.其他最常用也最需要优化的就是limit.Mysql的limit给分页带来了极大的方便,但数据量一大的时候,limit的性能就急 ...

  2. Sql Server 数据分页

    http://www.cnblogs.com/qqlin/archive/2012/11/01/2745161.html 1.引言 在列表查询时由于数据量非常多,一次性查出来会非常慢,就算一次查出来了 ...

  3. Oracle、MySql、SQLServer数据分页查询

    看过此博文后Oracle.MySql.SQLServer 数据分页查询,在根据公司的RegionRes表格做出了 SQLserver的分页查询语句: 别名.字段 FROM( SELECT row_nu ...

  4. 知方可补不足~SQL2005使用ROW_NUMBER() OVER()进行数据分页

    回到目录 数据分页是这个经常说的东西,无论在WEBForm还是WinForm中它都会被单独拿出来,或者是公用组件,或者是公用类库,反正对于数据分页这个东西,总是我们关注的一个话题,但事实上,数据分页归 ...

  5. salesforce 零基础开发入门学习(八)数据分页简单制作

    本篇介绍通过使用VF自带标签和Apex实现简单的数据翻页功能. 代码上来之前首先简单介绍一下本篇用到的主要知识: 1.ApexPages命名空间 此命名空间下的类用于VF的控制. 主要的类包括但不限于 ...

  6. Oracle中的数据分页

    --数据分页脚本 --创建包含数据分页代码元素声明的包头结构create or replace package data_controlis type type_cursor_data is ref ...

  7. 数据分页处理系列之三:Neo4j图数据分页处理

      首先简单介绍下Neo4j,Neo4j是一个高性能的NOSQL图形数据库,它将结构化数据存储在网络上而不是表中,它是一个嵌入式的.基于磁盘的.具备完全的事务特性的Java持久化引擎,但是它将结构化数 ...

  8. 数据分页处理系列之二:HBase表数据分页处理

      HBase是Hadoop大数据生态技术圈中的一项关键技术,是一种用于分布式存储大数据的列式数据库,关于HBase更加详细的介绍和技术细节,朋友们可以在网络上进行搜寻,笔者本人在接下来的日子里也会写 ...

  9. 数据分页处理系列之一:Oracle表数据分页检索SQL

      关于Oracle数据分页检索SQL语法,网络上比比皆是,花样繁多,本篇也是笔者本人在网络上搜寻的比较有代表性的语法,绝非本人原创,贴在这里,纯粹是为了让"数据分页专题系列"看起 ...

  10. Oracle、MySql、SQLServer 数据分页查询

    最近简单的对oracle,mysql,sqlserver2005的数据分页查询作了研究,把各自的查询的语句贴出来供大家学习..... (一). mysql的分页查询 mysql的分页查询是最简单的,借 ...

随机推荐

  1. corejava-内容梳理

  2. 3. 修改myeclipse工作区间默认编码和jsp的默认编码

    1.windows - preferences - General - Workspace 2.windows - preferences - MyEclipse - Files and Editor ...

  3. JAVA JDBC 各大数据库的连接字符串和连接类

    oracle:     driverClass:oracle.jdbc.OracleDriver     url:jdbc:oracle:thin:@127.0.0.1:1521:dbname mys ...

  4. Spring Data Jpa --- 入门

    一.概述 Spring Data是Spring下的一个子项目,用于简化数据库访问,并支持云服务的开源框架.Spring Data支持NoSQL和 关系数据存储,其主要目标是使得数据库的访问变得方便快捷 ...

  5. opencv一些资料

    中文论坛: http://www.opencv.org.cn/forum.php?mod=forumdisplay&fid=1 yuv与mat转换: https://www.cnblogs.c ...

  6. find命令之时间戳使用示例

    查看当前目录以及子目录下哪些文件占用的空间最大: find  ./  -type  f  -exec du -m {} \; | sort -nr | head find  ./  -type  f ...

  7. Overcoming Life's Obstacles - ASC 2017 March 03-04

    <Overcoming Life's Obstacles - How a top oboist overcame a neurological disorder to play again> ...

  8. Ibatis/Mybatis模糊查询

    Ibatis/Mybatis模糊查询 根据网络内容整理 Ibatis中 使用$代替#.此种方法就是去掉了类型检查,使用字符串连接,不过可能会有sql注入风险. Sql代码 select * from ...

  9. pyplot文本显示

    pyplot文本显示 pyplot中文字符显示 pyplot默认不支持中文字符,因为默认字体是sans-serif,英文字体不能显示中文 方法1,修改需要输出中文字符的地方 在有中文输出的地方,添加属 ...

  10. python Count类(转)

    1.collections模块 collections模块自Python 2.4版本开始被引入,包含了dict.set.list.tuple以外的一些特殊的容器类型,分别是: OrderedDict类 ...