当前位置:伍佰目录 » 站长资讯 » 免费资源 » 技术文章 » 文章详细

Asp数据操作组件(百万级分页)(修改版)

来源:站长分类目录 浏览:451次 时间:2014-10-26
       偶是一个底层的ASP技术人员(属于半路出家的那种,以前是一名网络技术人员),最近参与制作一个CRM系统,架够采用ASP+SQL,考虑到以后数据查 询效率问题,所以在网上找了一个 Asp数据操作组件(百万级分页) ,实用环境:Asp+DLL+MsSQL(这个网上很多地方都可以下载),并且其中结合SQL存储过程,说实话以前SQL存储过程接触的比较少,所以在调 试该组件的时候遇到了一些问题,并试着改了一下(作者别生气(^..^)),高手们别笑话我。

      原代码如下:

 有分页列表数据:
 cls.tblName="Tablename" '表名
 cls.fldName="Id" '排序关键字段
 cls.PageIndex=Request("P")*1 '当前页码
 cls.PageSize=20 '每页列数
 cls.OrderType=1 '排序方式,0 、1 
 cls.strWhere=StrW '查询条件,不带Where
 cls.ListUrl="?Y="&Y&"&M="&M&"&D="&D&"&Sn="&Sn&"&P=" 分页URL
Set Rs=cls.Result
do while not rs.eof
rs.movenext
loop

分页数据 cls.page

       在原文的使用说明中,在翻页代码中对表查询默认是全部字段也就是*,这样是不是会浪费资源,而无法查询需要的字段,于是我在DLL代码中新加入一个变量名 为zdName,作为传递可控制查询条件的变量,同时在SQL存储过程中也加入相应的接受变量@zdName 字符型。

     在这个小问题解决后,又在使用上发现cls.strWhere付给它的变量StrW 如果条件变量其中带有类似 例如 a='b'则执行SQL存储过程时候会提示错误,后来发现是DLL代码中:

sql = "exec GetList " & tblName & "," & fldName & "," & PageSize & "," & PageIndex & "," & OrderType & ",'" & strWhere & "' "

这个地方是否写的不够严谨,在StrW中如果含有单引,那么将无法执行,所以我在DLL的VB代码改成

If InStr(strWhere, "'") <> 0 Then
       sql = "exec GetList " & tblName & "," & fldName & "," & PageSize & "," & PageIndex & "," & OrderType & ",""" & strWhere & """ "
       Else
       sql = "exec GetList " & tblName & "," & fldName & "," & PageSize & "," & PageIndex & "," & OrderType & ",'" & strWhere & "' "
      End If

试了试目前的问题确实解决了,这个组件我也是刚刚使用,希望对大家能有点帮助!

修改版下载:Asp数据操作组件(百万级分页)(修改版)


伍佰目录声明:本站部分文章来源于网络,版权属于原作者所有。如有转载或引用文章/图片涉及版权问题,请联系我们处理.我们将在第一时间删除! 联系邮箱:tsk@qq.com

快速链接

最新收录

最新点入