首页产品库评测行情新闻|手机数码笔记本台式机DIY硬件数字家庭数码相机办公外设|软件下载游戏开发|社区

更多

数码相机
MP4
LCD
机箱
音箱

软件资讯设计 工具 系统 开发 安全 办公 陶吧 IT教育 Windows 7 | 下载中心天极下载中心诚征下载通路合作伙伴
天极网 > 软件频道 > 网页陶吧>在JS中使用RecordSet对象的GetRows方法

在JS中使用RecordSet对象的GetRows方法

2007-03-26 11:15作者:xujiwei出处:天极Yesky责任编辑:龙犊

但是在JScript使用时,就会有一个问题,那就是JScript并没有二维数组,如果要用GetRows所获取的数据,必要将这个VBScript中的二维数组转换成JScript能识别的数组,即元素为数组的一个一维数组。

在JScript里,用GetRows方法获取的数组有一个toArray方法,可以转换成JScript中能用的数组,但是这个数组是一维的,也就是说,如果要像在VBScript一样使用的话,还需要我们自己来做转换。

查阅了MSDN及在网上搜索了相关的文章之后,我写了一个数组转换的函数用于在JScript中使用GetRows方法。

程序代码:
  1. <script language="JScript" runat="server">
  2. // code by xujiwei
  3. // http://www.xujiwei.cn/
  4. // 定义变量
  5. var conn,rs,vdata,data,recN,i;
  6. // 连接数据库
  7. conn=Server.CreateObject("ADODB.Connection");
  8. conn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+
  9.     Server.MapPath("data.mdb"));
  10. // 获取记录集
  11. rs=conn.Execute("SELECT id,first,second FROM test");
  12. // 获取数据数组,并转换成为JScript中可用的数组类型
  13. vdata=rs.GetRows().toArray();
  14. // 获取数据表的字段数
  15. i=rs.Fields.Count;
  16. // 关闭记录集,释放对象
  17. rs.Close();
  18. rs=null;
  19. // 转换数组
  20. data=transArray(vdata,i);
  21. // 获取记录数
  22. recN=data.length;
  23. // 循环输出数据
  24. for(i=0;i<recN;i++) {
  25.     // 注意,数组下标从0开始
  26.     // 显示数据库中数据
  27.     Response.Write("ID: "+data[i][0]+", First: "+data[i][1]+
  28.         ", Second: "+data[i][2]+"<br />");
  29. }
  30. // 关闭数据库连接,释放对象
  31. conn.Close();
  32. conn=null;
  33. // 数组转换函数
  34. // by xujiwei
  35. // 参数:arr - GetRows方法得到的对象用toArray方法得到的数组
  36. //       fieldslen - 数据表字段数
  37. function transArray(arr,fieldslen) {
  38.     var len=arr.length/fieldslen,data=[],sp;
  39.     for(var i=0;i<len;i++) {
  40.         data[i]=new Array();
  41.         sp=i*fieldslen;
  42.         for(var j=0;j<fieldslen;j++)
  43.             data[i][j]=arr[sp+j];
  44.     }
  45.     return data;
  46. }
  47. </script>

对于一些更新频率不高,而使用次数比较多的数据,可以在成功获取数据数组之后,用Application对象来缓存起来,从而减少对数据库的查询次数,一定程序程度上优化ASP的性能。

版权声明:未作特别说明的内容可以转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明。本文地址:http://www.xujiwei.cn/blog/?id=717


  阅读关于 ASP vbscript JS RecordSet 对象 GetRows 的全部文章 热卖推荐: 手机 诺基亚 MP5 电脑包 双卡双待 手机链 U盘 笔记本电脑

关注此文的读者还看过:

返回网页陶吧首页

共2页。 上一页12

软件频道最新更新

热点推荐

IT嘉年华

编辑推荐

软件下载

热门
推荐

网友关注

软件
资料
游戏

装机推荐

文章排行

本周
本月
最新更新
天极服务|关于我们|About us|网站律师|RSS订阅|友情合作|加入我们|天极动态|网站地图|意见反馈|MSN/QQ上看天极
Copyright (C) 1999-2012 Yesky.com, All Rights Reserved 版权所有 天极网络