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 ...
随机推荐
- hdoj1010 奇偶剪枝+DFS
Tempter of the Bone Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Othe ...
- 第六章 图(a)概述
- SUSE11&12 永久关闭防火墙
SUSE11下:关闭操作为:service SuSEfirewall2_setup stopservice SuSEfirewall2_init stop取消开机启动防火墙:chkconfig SuS ...
- NSThread 在主线操作的三个方法
- (void)createNSThread444{ UIImage *image = [UIImage imageNamed:@"图片名字"]; /** 1 performSel ...
- iOS 7.0.2 的bug记录
在iOS 7.0.2 版本上,如果从主屏幕进入webapp且webapp进入全屏模式,那么alert和修改window.location到某产品对应的itunes下载页面则无效. 可参考下面的代码示例 ...
- php session阻塞页面分析及优化 (session_write_close session_commit使用)
转: http://www.tuicool.com/articles/bqeeey 首先看下下面代码, session1.php 文件 <?php ini_set('session.save_p ...
- EditTex
<EditText android:layout_width="match_parent" android:layout_height="100dp" a ...
- git 常用命令笔记
#提交代码会加上用户名和邮箱 git config --global user.name 名字 git config --global user.email 邮箱 git config --globa ...
- 20172325 2017-2018-2 《Java程序设计》第九周学习总结
20172325 2017-2018-2 <Java程序设计>第九周学习总结 教材学习内容总结 异常 1.学习了异常的基本概念: 2.区分异常与错误: 一个异常是指一个定义非正常情况或错误 ...
- 记录pytorch的几个问题
1.Variable里面的creator没有,网上博客上面说有,奇怪??