当前位置: 首页 > 图文教程 > 网络编程 > ASP > 三天学好ADO之第二天

ASP
ASP正则表达式技巧
ASP Access实现网站计数器(访问量)
ASP新闻分页,将一篇过长的文章分页,生成静态页面
一些关于asp 购物车的想法
一个sql查询器,自动画表格填字段
ASP实现文件直接下载的代码
把网页中的(电话,qq等数字)生成图片的ASP程序
asp长文章用分页符来分页显示
Asp函数介紹(37个常用函数)
ASP中的面向对象类
分页实现方法的性能比较
asp ajax跨域提交数据
asp修改文件和文件夹的名字的代码
ASP 多关键词查询实例代码
asp被杀毒软件误删的解决方法
asp 多关键词搜索的简单实现方法
asp 根据IP地址自动判断转向分站的代码
asp dictionary对象的用法
ASP 千万级数据分页的存储过程
ASP隐藏真实文件的下载功能实现代码

ASP 中的 三天学好ADO之第二天


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 97 ::
收藏到网摘: n/a

今天说一下Recordset 对象的属性
1、CursorType 属性
AdOpenForwardOnly: 仅向前游标,默认值。除了只能在记录中向前滚动外,与静态游标相同。当只需要在记录集中单向移动时,使用它可提高性能。(顾名思义,这种游标只能向前移动。然而,由于这种游标功能有限,将它用于系统资源时是非常有效的。)
AdOpenKeyset: 键集游标。尽管从您的记录集不能访问其他用户删除的记录,但除无法查看其他用户添加的记录外,键集游标与动态游标相似。仍然可以看见其他用户更改的数据。(KeySet游标允许你看见自它创建起其他用户所做的修改,然而你却不能看到其他用户增加或删除的记录。)
AdOpenDynamic :动态游标。可以看见其他用户所作的添加、更改和删除。允许在记录集中进行所有类型的移动,但不包括提供者不支持的书签操作。(此类型的游标功能强大同时也是耗费系统资源最多的游标。Dynamic游标可以看到他们保存记录集合的所有变化。使用Dynamic游标的用户可以看到其他用户所做的编辑、增加、删除。如果数据提供者允许这种类型的游标,那么它是通过每隔一段时间从数据源重取数据来支持这种可视性的。毫无疑问这会需要很多的资源。 )
AdOpenStatic:静态游标。可以用来查找数据或生成报告的记录集合的静态副本。另外,对其他用户所作的添加、更改或删除不可见。(Static类游标只是数据的一幅快照。这就是说,它无法看到自它创建以后其他用户对RecordSet所做的修改。采用这类游标你可以向前和向后航行。由于其功能简单,资源的需求比Dynamic要小! )
需要注意的是:一旦打开RecordSet,你就无法改变CursorType属性。但是,如果你首先关闭RecordSet,改变CursorType属性,然后重新打开RecordSet,那么你仍可以有效地改变游标的类型!

2、LockType 属性
在任何同时可被多用户修改的数据库应用程序中,你必须处理可能发生的多个用户同时对同一条记录进行操作时的情况。当这种情况出现时,数据的完整性就会受到威胁,这是因为一个用户可能会在不自觉地在保存自己所做的修改时覆盖他人的修改。到时候你会觉得自己好象是没有做事。为了处理这种情况。ADO允许你在对RecordSet对象进行更新时决定并发事件控制的类型,当一个用户编辑时,如何由他对记录进行锁定。这就是由LockType属性所决定的。这个属性有四个值:
adLockReadonly:默认值,只读。无法更改数据。(这是RecodSet的默认值,如果你把锁定的方式设为该值,那么你将不能更新 Recordset。)
adLockPessimistic:保守式记录锁定(逐条)。提供者执行必要的操作确保成功编辑记录,通常采用编辑时立即锁定数据源的记录的方式。(如果设置为此类锁定,记录被锁定,且只有在编辑开始到将记录更新的提交给数据提供者这段时间内进行编辑的用户才可以访问! )
adLockOptimistic:开放式记录锁定(逐条)。提供者使用开放式锁定,只在调用 Update 方法时锁定记录。(只有在将数据提交给数据提供者的那一瞬间才把记录锁定。)
adlockBatchOptimistic:开放式批更新。用于与立即更新模式相反的批更新模式。(设定为这种类型的锁定制式将被称为批量更新模式的RecordSet。 可以加快更新RecordSet修改数据的速度,但因为同时更新多个记录,它也会恶化与并发访问相关的问题! )

3、AbsolutePage 属性
AbsolutePage属性设定当前记录的位置是位于哪一页的页数编号;使用PageSize属性将Recordset对象分割为逻辑上的页数,每一页的记录数为PageSize(除了最后一页可能会有少于PageSize的记录数)。这里必须注意并不是所有的数据提供者都支持此项属性,因此使用时要小心。
与AbsolutePosition属性相同,AbsolutePage属性是以1为起始的,若当前记录为Recordset的第一行记录,AbsolutePage为1。可以设定AbsolutePage属性