45IT.COM- 电脑学习从此开始!
DIY硬件教程攒机经验装机配置
设计Photoshop网页设计特效
系统注册表DOS系统命令其它
存储主板显卡外设键鼠内存
维修显卡CPU内存打印机
WinXPVistaWin7unix/linux
CPU光驱电源/散热显示器其它
修技主板硬盘键鼠显示器光驱
办公ExcelWordPowerPointWPS
编程数据库CSS脚本PHP
网络局域网QQ服务器
软件网络系统图像安全
页面导航: 首页 > 设计学院 > 网络编程 > ASP教程 >

浅谈ASP的游标选择(Recordset Cursors)

电脑软硬件应用网 45IT.COM 时间:2005-12-30 19:26 作者:45IT收集

  在ADO里创建一个recordset对象有以下两种方法:
  1. 显式地创建recordset:

 Set rs = Server.CreateObject("ADODB.Recordset")

  2. 隐式地创建一个recordset: 

 Dim rs, conn
 Set conn = Server.CreateObject("ADODB.Connection")
 conn.open "DSN=student;UID=;PWD="
 Application("Connection_String")
 Set rs = conn.Execute("SELECT * FROM score")

  当我们拥有了recordset对象后就可以用rs来引用它. 如果这个recordset对象由ADO/ASP隐式地创建的,它的游标类型是forward-only. 然而,当你显式地创建了一个recordset对象,你就能用如下的代码来设置你所想使用的游标类型:

rs.CursorType = 'Enter cursor type here

游标类型可以是以下四种类型之一:

 Forward-only 
 Static 
 Keyset 
 Dynamic

  Forward-only型游标占用最少的资源,因而能得到最高的性能. 它也是recordset缺省的游标类型,唯一的缺点是只能单向移动游标. 你只能从头到尾单向遍历记录集,亦即只能使用MoveNext这样的方法,而不能使用MovePrev. 比方说,如果你企图在一个forward-only的recordset里使用MovePrev的方法,你将得到一个错误提示.要使用一个forward-only型的游标,你应该键入:

rs.CursorType = adOpenForwardOnly

  注意: 在你的每一个ASP页面中一定要包含adovbs.inc这个文件.
  static型游标. 它允许你向任何一个方向移动游标,但如果用户在查看数据集同时,数据集发生了更新,删除或添加的操作,它将无法实时反映数据集的变化. 它就如同数据集在用户在请求数据的时刻的映像(也叫快照,snapshot). 如果数据集的游标是static型的,你可以使用各种各样的遍历数据集的命令,诸如MoveFirst,MovePrev,MoveLast,RecordCount等等. 你可以键入下面的程序来使用static型游标:

rs.CursorType = adOpenStatic

  Dynamic和Keyset型游标可以实时查看数据的更动. 但这只是在VisualBASIC应用程序起作用,对于Web页面则一点儿用都没有. 一旦用户发出数据请求,就同static型游标一样数据集中得到那一时刻的数据映像. 如果用户不刷新他们的浏览器页面,想持续地反应数据的变化是不可能的. 由于Web浏览方式的特殊性,你可能根本用不到Keyset或Dynamic型的游标,它们特别耗费系统的资源.   如果你需要各方向遍历你的数据集,或是想得知数据集中的记录数,就采用Static型游标,否则就用Forward-only型的. 总之,你在创建recordset时,应该选择合适的游标!

顶一下
(3)
100%
踩一下
(0)
0%
------分隔线----------------------------
无法在这个位置找到: baidushare.htm
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
验证码:点击我更换图片
推荐知识