asp.net—执行分页存储过程的函数
分页存储过程的T—SQL在之前的文章中已经跟大家分享过了
现在就对应 分页存储过程 跟大家分享下在.net中执行的函数。
该文章是希望给予新手一些编程过程中的帮助(大神可以帮忙指出代码中的不妥之处)
public static DataTable PageQuery(string sqlconn, CommandType command_type, PageSearch DbConnection, ref Int32 totalCount, bool bNeedCloseConn = true)
{
SqlConnection cn = null;
SqlCommand Mcmd;
DataTable dt = new DataTable();
try
{
SqlParameter[] para = new SqlParameter[];
para[] = new SqlParameter("@tab", DbConnection.DbTable);
para[] = new SqlParameter("@PrimaryKey", DbConnection.DbPrimaryKey);
para[] = new SqlParameter("@strFld", DbConnection.DbFiles);
para[] = new SqlParameter("@strWhere", DbConnection.Where);
para[] = new SqlParameter("@PageIndex", DbConnection.PageIndex);
para[] = new SqlParameter("@PageSize", DbConnection.PageSize);
para[] = new SqlParameter("@Sort", DbConnection.Sort);
para[] = new SqlParameter("@Order", DbConnection.Order);
para[] = new SqlParameter("@IsDistinct", DbConnection.IsDistinct);
para[] = new SqlParameter("@TotalCount", SqlDbType.Int);
para[].Direction = ParameterDirection.Output;
cn = comm_fun.get_cn(sqlconn);
cn.Open();
// 声明哪个执行存储过程
Mcmd = new SqlCommand("pro_common_pageList", cn);
Mcmd.CommandType = command_type;
Mcmd.Parameters.AddRange(para);
if (cn.State != ConnectionState.Open)
cn.Open();
// 获取分页数据集
SqlDataReader sqldr = Mcmd.ExecuteReader();
dt.Load(sqldr);
sqldr.Close();
// 返回总记录数
totalCount = para[].Value;
if (bNeedCloseConn == true)
{
Mcmd.Dispose();
cn.Close();
}
Mcmd.Parameters.Clear(); // 清掉参数以便下次使用
return dt;
}
catch (Exception ex)
{
return dt;
}
finally
{
comm_fun.CloseConnection(cn);
}
}
注:上述代码中 “comm_fun” 是封装好的SqlHellper类。"pro_common_pageList"是存储过程名称
asp.net—执行分页存储过程的函数的更多相关文章
- asp.net执行SqlServer存储过程!(详解!)
ASP.NET执行存储过程 一. 执行一个没有参数的存储过程的代码如下: connectionString为连接字符串 SqlConnection conn=new SqlConnection(con ...
- 【转】ASP.NET 高效分页存储过程
代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-- ...
- MySQL基础值 存储过程和函数
一.创建存储过程和函数 什么是创建存储过程和函数? 就是将经常使用的一组SQL语句组合在一起,并将这些SQL语句当做一个整体存储在MYSQL服务器中. 创建存储过程的语句是:CREATE PROCE ...
- mysql 存储过程,函数,触发器
存储过程和函数 mysql> HELP CREATE PROCEDURE; Name: 'CREATE PROCEDURE' Description: Syntax: CREATE [DEFIN ...
- mysql存储过程和函数(一)
存储过程和函数是事先经过编译并存储在数据库的一段sql语句集合,调用存储过程和函数可以简化应用程序开发人员的很多工作,减少数据在数据库和应用服务器之间的传输,对提高数据运行效率是有好处的. 存储过程和 ...
- MySQL基础笔记(六) 存储过程与函数
写在开头:本文所有的示例都是基于workers表,表中保存了某公司的员工姓名.性别.工资.年龄和居住城市,如下: +----+-----------+--------+--------+------+ ...
- SqlServer分页存储过程(多表查询,多条件排序),Repeater控件呈现数据以及分页
存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程的名字并给出 ...
- asp.net中分页与存储过程的一些总结
一.接上文,使用的是jquery AJAX 进行分页 分页存储过程代码如下: ALTER PROCEDURE [dbo].[USP_GetAlbumByPage] @pageIndex int,--当 ...
- (转)asp.net分页存储过程
Asp.Net分页存储过程 SQL分页语句 一.比较万能的分页: sql代码: 1 2 3 select top 每页显示的记录数 * from topic where id not in (sel ...
随机推荐
- ASP.NET中修改从数据库获取的datatable中的值
有些时候,我们从数据库表中获取一个实体的对象,但有些内容并不是最终显示的内容,格式也都是不一样.经过一番尝试,发现datatable中的数值如果跟想要改变的类型不一致,就无法更改,只有添加新列,然后把 ...
- java和数据结构的面试考点
目标:不要有主要的逻辑错误.2遍以内bug free.注意代码风格 不要让面试官觉得不懂规矩 Java vs C++ Abstract class vs interface pass by refe ...
- 35-面试:如何找出字符串的字典序全排列的第N种
http://www.cnblogs.com/byrhuangqiang/p/3994499.html
- 接触mybatis使用
1.mybatis mybatis是一个自定义sql.存储过程和高级映射的持久层框架,是Apache下的顶级项目. mybatis可以让程序员将主要精力放在sql上,通过mybatis提供的映射方式. ...
- 国内maven仓库地址
Maven 中央仓库地址: 1.http://mvnrepository.com/ (推荐) 2.http://mirrors.ibiblio.org/maven2/ 3.http://repo1.m ...
- 用 PHP-GTK2 做 Win32 GUI 程序
PHP通常是做为服务器端脚本执行,如果告诉你PHP可以编写普通的GUI程序,你应该很感兴趣.下面介绍的PHP-GTK就是PHP的GUI扩展.GTK是一个业界标准的图形库,具有良好的移植性.如果你用过l ...
- Git 初始状操作指引
You have an empty repository To get started you will need to run these commands in your terminal. Ne ...
- windows10 装linux子系统
http://blog.csdn.net/Yuxin_Liu/article/details/52347898 试了一下,下载太慢,就没继续用,可以用实验楼这个网来玩玩linux
- Ckeditor上传图片返回的JS直接显示出来,未执行!!!
Ckeditor上传图片网上有很多教程. 下面是我今天下午遇到的一个坑...自己挖的坑. 在conotroller里 我开始习惯性的 response.setContentType("app ...
- 2018.09.23 codeforces 1053A. In Search of an Easy Problem(gcd)
传送门 今天的签到题. 有一个很显然的结论,gcd(n∗m,k)≤2gcd(n*m,k)\le 2gcd(n∗m,k)≤2. 本蒟蒻是用的行列式求三角形面积证明的. 如果满足这个条件,就可以直接构造出 ...