ASP入门教程-Recordset对象

一、Recordset 对象简述

Recordset 对象表示的是来自基本表或命令执行结果的记录全集。在任何情况下,该对象所指的当前记录均为集合内的单条记录。使用 Recordset 对象可以操作来自提供程序的数据,通过该对象几乎可以对所有数据进行操作。所有 Recordset 对象均使用记录(行)和字段(列)进行构造。Recordset 对象实际上是依附于 Connection 对象和 Command 对象之上的。通过建立及开启一个 Connection 对象,可以与我们关心的数据库建立连接;通过使用 Command 对象,则可以告诉数据库我们想要做什么:是插入一条记录,还是查找符合条件的记录;通过使用 Recordset 对象,则可以方便自如地操作 Command 对象返回的结果。

二、创建 Recordset 对象

要使用 Recordset 对象处理结果,首先必须创建 Recordset 对象实例。其格式如下:

Set RS=Server.CreateObject("adodb.recordset")

三、打开记录集

RS.Open Source,ActiveConnection,CursorType,LockType,Options

所有的参数都是可选项。Source 为 Command 对象变量名、SQL 语句、表名、存储过程调用或持久 Rcordset 文件名。

ActiveConnection 为有效的 Connection 对象变量名或包含 ConnectionString 字符串。

LockType 指定打开 Recordset 时应使用的锁定类型。

Options 指定如何计算 Source 参数或从以前保存 Recordset 的文件中恢复 Recordset。

四、Recordset 对象的常用属性

Recordset 对象的常用属性<表>

属 性 描   述 / 注 解
ActiveConnection 指定与数据提供者的连接信息,用来指定当前的 Recordset 对象属于哪个 Connection 对象。
Source 指定 Recordset 对象的数据源,可以是一个 Command 对象名、SQL 语句、数据库表或存储过程 。
CoursorType 指定 Recordset 对象所使用的光标类型。
共有 4 种光标类型:

0 一 前滚光标,光标只能向前移动,执行效率高。是 Cursor 的默认值;

1 一 键盘光标,光标可向前或向后移动,Recordset 记录集同步反映自它创建后其他用户所作的修改和删除,但却不能同步反映自它创建后其他用户新增加的记录;

2 一 动态光标,光标可向前或向后滚动,任何时候 Recordset 记录集都同步反映其他用户的任何操作;

3 一 静态光标,光标可向前或向后移动,自创建后无法同步反映其他用户所做的任何操作,它的功能简单但消耗资源少。

LockType 表示编辑时记录的锁定类型。它决定了当不止一个用户试图同时改变一个记录时,Recordset 如何处理数据记录。
0 一 只读锁定,记录只读,不能更新 Recordset ,为 LockType 的默认值;

1 一 悲观锁定,编辑记录开始立刻锁定,直到提交给数据提供者;

2 一 乐观锁定,一次锁定一条记录,只有调用 Update 方法提交数据时才锁定记录;

3 一 乐观的批量更新,允许同时更新多条记录。

Filter 用来设定一个过滤条件,以便对 Recordset 记录进行过滤。
CacheSize 表示一个 Recordset 对象在高速缓存中的记录数。
Maxrecords 执行一个 SQL 查询时,返回 Recordset 对象的最大记录数。
Bof 判断记录指针是否到了第一条记录之前。
Eof 判断记录指针是否到了最后一条记录之后。
RecordCount 返回 Recordset 对象的记录数,(在使用键盘光标时,该属怀返回 的可能是不太准确的数值;一般情况下,并不用这种方法来统计 Recordset 中的记录数,因为它的性能并不稳定)
Bookmark 书签标记,用来保存当前记录的位置。
AbsolutePosition 用来设定 Recordset 对象中当前记录的顺序位置是第几行记录。
PageSize 表示 Reccordset 对象的页面大小(每页多少条记录),默认值为10。
PageCount 表示 Recordset 对象的页面个数。
AbsolutePage 表示当前记录的页号。
EditMode 指示当前记录的编辑状态,0 一 已被编辑;1 一 已被修改而未提交;2 一 存入数据库的新记录 。
Status 对 Recordset 对象进行批量更新后,查询当前记录的状态。
意义描述 意义描述
0 记录更新成功。 1024 存在记录锁定,新记录未保存。
1 新记录。 2048 使用乐观并发事件,未保存。
2 记录被删除。 4096 用户违反完整性规则,记录未保存。
4 记录未被删除。 8192
很待定修改,记录未保存。

8 记录未被修改。 16384 与一存储对象相冲突,记录未保存。
16 书签不合法,记录未保存。 32768 内存不够,记录未保存。
64 影响多个记录,未保存。 65536 用户没有中、足够的权限,未保存。
128 指向一待定插入,记录未保存。 131072 违反基本数据库原则,记录未保存。
256 操作被取消,记录未保存。 262144 记录已从数据源删除。

    

五、Rcordset 对象的方法

Recordset 对象的方法<表二>

方法 描述 / 格式 / 注解
Open 打开一个 Recordset 对象。
Rs.Open[Source][,ActiveConnection][,CursorType][,LursorType][,Option]
Rs :为已经建立的 Recordset 对象;

Source :为可选参数,可以是一个 Command 对象名、SQL 语句、数据库表或存储过程; 

ActiveConnection :定义与数据库的连接信息;

CursorType :是Recordset 对象所使用的光标类型;

LockTypec 是编辑 Recordset 对象记录时所使用的锁定类型;

Option 指示数据提供者如何处理 Source 的内容类型,其参数值及其意义见下表:

 

Options值 意义描述
1 表示被执行的字符串包含一个命令文本。
2 表示被执行的字符串包含一个表名。
4 表示被执行的字符串包含一个存储过程名。
8 没有指定字符串的内容(这是默认值)
Close 关闭一个 Recordset 对象。 但并不从内存中删除该对象,只是无法读取其中的数据,但仍然可以读取它的属性。因此一个关闭的 Recordset 对象还可以用 Open 方法打开并保持其原有属性。
Rs.Close
Rs:为已经建立的 Recordset 对象;如果正进行编辑更新数据的操作,则在使用此方法之前必须先调用 Update 和 CancelUpdate 方法。否则将会出现错误。
Clone 创建一个 Recordset 对象的完全拷贝,但只有所用的 Recordset 对象类型允许使用 Bookmarks时才能使用该方法。
MoveFirst 把 Recordset 指针指向第一行记录。
Rs.MoveFirst
MoveLast 把 Recordset 指针指向最后一条记录(该 Recordset 必须支持书签)。
Rs.MoveLast
MovePrevious 把Recordset 指针上移一行(使用前应判断 BOF 是否为真,该方法必须支持书签)。
Rs.MovePreviors
MoveNext 把Recordset 指针下移一行(使用前应判断 EOF 是否为真)。
Rs.MoveNext
Move 把Recordset 指针指向指定的记录。
Move n [,start]
n 为要移动的记录数,取正时表示向前(下)移动,取负时表示向后(上)移动;

start 是可选参数,表示移动的起点。

GetRows 从一个 Rexordset 对象读取一行或多行记录到一个数组中。
Myarray=Rs.GetRows ( rows,start,fields )
Myarray 为目标数组名;Rs 为已创建的 Recordset 对象,Rows 为返回数组的行数;start 为读取数据的起点 (书签);Fields 为 Recordset 的字段。
NextRecordSet 清除当前的 Recordset 并执行下一条指令,以传回下一个 Recordset 对象,如果没有下一条指令,则返回 Nothing 给 Recordset 。
Requery 重新执行 SQL 操作,以更新 Recordset 对象中的数据。
Resync 从数据源更新当前的 Recordset 记录,实现与数据源的同步。
Addnew 增加一条空记录。
Rs.AddNew N
增加一条空记录,并将数组中的元素(N)添加到这条空记录中。
Delete 删除当前记录。
Delete [value]
如果 value=1(默认值)表示该方法只删除当前记录,value=2 表示该方法删除所有由 Filter 属性设定的记录。
Update 保存当前记录的任何变动。
Rs.Update
CancelUpdate 取消前一个 Update 方法所做的一切修改。
UpdateBatch Recordset 工作在批量方式时,取消对 Recordset 的更新。
Suports 获取创建的 Recordset 对象的能力信息。
注:使用 Move 、MoveFirst 、MoveLast 、MovePrevious 、MoveNext 方法移动记录指针时,需要注意 Rrcordset 对象的光标类型。如“前滚光标”限制了记录指针只能向前移动。
时间: 2024-09-27 08:04:54

ASP入门教程-Recordset对象的相关文章

ASP入门教程-Response对象的常用属性

一.Buffer属性 Response 对象的Buffer 属性是用来确定是否输出缓冲页,也就是控制何时将输出信息送至请求浏览器.Buffer 的取值可以是"true" 或 "False" ,若取True 表示使用缓冲页,若Web 服务器输出使用缓冲页,则只有当前页的所有服务器脚本处理完毕或是调用了Flush 或 End 方法,才将数据传送至客户端,若取False 表示不使用缓冲页,数据在当前页的所有服务器脚本处理的同时传送至客户端.其语法格式如下: Respons

ASP入门教程-Request对象概述

Request对象在HTTP请求期间检索客户端浏览器传递给服务器的值.也就是说用它来与客户端交互,收集客户端信息或服务器端的环境变量,然后将收集的这些信息发送给服务器端或其它asp页面. 一.Request 对象的集合 Request对象共有5个集合,如下表: 集合名称 说 明 ClientCertificate 当客户端访问一个页面或其它资源时,用来向服务器表明身份的客户证书的所有字段或条目的数值集合,每个成员均是只读.(用于检索存储在发送到HTTP请求中客户端证书中的字段值) Cookies

ASP入门教程-Response对象的Cookies集合

一.Cooies集合是Response对象和Request对象共有的一项经常用到的集合.用户通过HTTP标头访问一个主页时,每次都要重新开始.因此,如果要判断某个用户是否曾经进入本网站,那么就可以使用Cookies了.当用户第一次访问此网站时,可以利用Response对象的Cookies集合将数据存储到客户端计算机,当用户再一次访问此网站时,则可以利用Request对象的Cookies集合取得相关信息. Cookies存放在浏览器端的本机磁盘上,而不是存放在服务器端.通常,Cookies包含用户

ASP入门教程-Response对象概述

一.使用Response对象可以将输出信息发送到客户端.包括直接发送信息给浏览器.重定向浏览器到另一个URL地址或设置Cookie的值等功能. 二.Response提供了集合.属性和方法来进行参数的传递. Response对象唯一一个集合:Cookies集合的属性列表 集合 描 述 Domain 指定只有某个Domain(网域)可以取该Cookies,只写属性. Expires Cookies的过期日期,为了在会话结束后将Cookies存储在客户端磁盘上,必须设置该日期.若此项属性的设置没有超过

ASP入门教程-Application对象概述

一.Application对象概述 当载入ASP DLL并响应对一个ASP网页的第一个请求时,创建Application对象.该对象提供一个存储场所,用来存储对于所有访问者打开的所有网页都可用的变量和对象 可以使用 Application 对象在给定的应用程序的所有用户之间共享信息.基于 ASP 的应用程序同所有的 .asp 文件一样在一个虚拟目录及其子目录中定义.因为多个用户可以共享 Application 对象,所以必须要有 Lock 和 Unlock 方法以确保多个用户无法同时改变某一属性

ASP入门教程-Session对象概述

一.Session对象概述 Session对象其实指的就是用户从到达某个站点直到离开为止的那段时间内,服务器端分配给用户的一个存储信息的全局变量的集合,这些变量可以是自动生成的,也可以是编程者在服务器端脚本定义的. 当用户在应用程序的 Web 页面之间跳转时,存储在Session 对象中的变量将不会丢失,而且在整个用户会话中会一直在下去. 当用户请求 ASP 应用程序的某个页面时,若用户尚未建立 Session 对象,服务器端就会自动创建一个 Session 对象,并指定一个惟一的 Sessio

ASP入门教程-Server对象概述与属性

一.Server对象概述 通过Server对象可以使用服务器上的许多高级功能.使用Server对象可以创建各种服务器组件实例,从而实现访问数据库对文件进行输入输出,以及在Web页上自动轮换显示广告图像等功能:使用Server功能也可以完成调用ASP脚本.处理HTML和URL编码以及获取服务器对象的路径信息等任务.Server对象通过属性和方法来访问Web服务器,从而实现对数据.网页.外部对象.组件的管理. 二.Server对象的 属性 Server对象只支持一个ScriptTimeout属性,用

ASP入门教程-Connection对象

1.Connection 对象简述 Connection 对象代表了打开的.与数据源的连接,好象在应用程序和数据库中建立了一条数据传输连线,该对象代表与数据源进行的惟一会话.ASP 使用 ADO 对各种数据源进行各种操作,其中,Connection 对象是必不可少的,在这个基础上可以使用 Command 对象及 Recordset 对象来对 Connection 对象所连接的数据库进行插入.删除.更新和查询等操作. 2.Connection 对象的常用属性 Connection 对象的常用属性

ASP入门教程-Command对象

Coonamd 对象定义了将对数据源执行的命令,可以用于查询数据库表并返回一个记录集,也可以用于对数据库表进行添加.更改和删除操作. 一.使用Command 对象的步骤: 当在 ASP 页面中使用 Command 对象处理数据时,应首先设置命令类型.命令文本以及相关的活动数据库连接等,并通过 Parameter 对象传递命令参数,然后通过调用 Execute 方法来执行 SQL 语句或调用存储过程,以完成数据库记录的检索.添加.更改和删除任务.其步骤如下: 1.使用 ActiveCommand