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 ...
随机推荐
- python之面向对象之反射运用
先看下hasattr和getattr在反射中的用法 import sys class apache(object): def __init__(self,tcp): self.tcp = tcp de ...
- js switch case注意事项
今天写switch的时候发现没有达到预期效果,参照w3school的写法发现语法一致 想了一下,js是弱类型语言,是不是不支持number?试了一下将数字改为字符串,果然可以了 或者可以这样写:swi ...
- 删除链表中的重复元素:不留&留一个&删除一个
不留: [抄题]: 给定一个排序链表,删除所有重复的元素只留下原链表中没有重复的元素. [思维问题]: 给出 1->2->3->3->4->4->5->nul ...
- 自定义 tableviewheader 高度显示不正常
BUG : 自定义的Xib View, 设置为tableview分区头的时候 tableview 如果是plain 模式, 设置 sectionHeader, sectionHeader会成为悬浮 ...
- 8-组成n的1的个数
/* ones时间限制:1000 ms | 内存限制:65535 KB难度:3 描述 Given a ...
- (一)ROS的安装与环境配置
1.设置教程 1.1 打开system setting(系统设置)->Software&Updates(软件与更新) 1.2点击上方Other software(其他软件),点击左下角a ...
- MVC中构建Linq条件、排序、Selector字段过滤
代码: System.Linq.Expressions.Expression<Func<Domain.S_ROLE, bool>> expressWhere1 = (c =&g ...
- geoserver中除了使用kml来查询数据以外,还可以使用csql或ecsql
package com.geoserver; import java.io.IOException; import java.util.ArrayList; import java.util.Hash ...
- 在Ubuntu上安装boost库[转]
在编译kenlm的时候需要安装boost,去官网下载boost安装包,然后按照以下步骤安装. boost官网 -----------------以下内容,网上转载------------------- ...
- crontab误删除
命令如下: cat /var/log/cron* | grep -i "`which cron`" > ./all_temp cat ./all_temp | grep -v ...