邹建的分页存储过程改了一下

网络编程 2025-03-25 13:00www.168986.cn编程入门

邹建的分页存储过程增强版——高效分页并同步记录总数

在日常应用中,分页显示数据是一个常见的需求。邹建的分页存储过程为我们提供了这一功能,但原始版本无法直接返回记录总数,导致每次分页时都需要额外统计一次,效率不高。为此,我对该存储过程进行了优化,使其可以返回记录总数,极大地提高了使用便捷性和效率。

在调用此优化后的分页存储过程时,首先需要定义一个输出变量以获取记录总数。这个输出变量定义在SQL语句之前。接着,执行统计记录数的SQL语句,通过该语句获取当前页的记录数。以下是调用方法的示例(ASP):

数据库连接字符串:

```vbscript

MyConStr = "Driver={SQL Server};server=(local);Uid=artme;Pwd=;Database=artme"

```

接下来,创建命令对象并设置相关参数:

```vbscript

DIM MyComm, UserID, UserName

Set MyComm = Server.CreateObject("ADODBmand")

With MyComm

.ActiveConnection = MyConStr '设置数据库连接字符串

mandText = "p_show" '指定存储过程名

mandType = 4 '表明这是一个存储过程

.Prepared = True '要求将SQL命令先行编译

```

然后,为存储过程添加参数:

```vbscript

.Parameters.Append .CreateParameter("RETURN", 2, 4) '添加返回记录数的参数

.Parameters.Append .CreateParameter("@iPageCount", 3, 2) '添加记录总数的输出参数

.Parameters.Append .CreateParameter("@QueryStr", 200, 1, 0) '添加查询语句参数

.Parameters.Append .CreateParameter("@PageSize", 3, 1, 4) '添加每页显示的记录数参数

.Parameters.Append .CreateParameter("@PageCurrent", 3, 1, 4, 1) '添加当前页码参数

.Parameters.Append .CreateParameter("@FdShow", 200, 1, 0) '其他查询条件参数(根据实际情况调整)

.Parameters.Append .CreateParameter("@FdOrder", 200, 1, 1000) '排序条件参数(根据实际情况调整)

```

执行存储过程并获取结果:

```vbscript

.Execute

iCount = MyComm(1) '获取记录总数(即第一参数的值)

Response.write iCount '输出记录总数到前端页面

```

这样,你就可以通过优化后的分页存储过程高效地进行数据分页显示,并同步获取记录总数。如需了解更多细节或进行进一步的定制,请访问我的博客或联系本人。如有任何疑问或反馈,欢迎通过以下链接进行联系或交流:< `cambrian.render('body')` 以正确渲染页面内容。

上一篇:jQuery 开发之EasyUI 添加数据的实例 下一篇:没有了

Copyright © 2016-2025 www.168986.cn 狼蚁网络 版权所有 Power by