关于Recordset 持久性的一点点研究

王朝other·作者佚名  2006-11-24
宽屏版  字体: |||超大  

使用记录集持久性,可以将 Recordset 数据和元数据保存为文件。随后,使用持久文件来重新建立 Recordset 对象。持久文件可以保存在本地驱动器、网络服务器上或者作为 URL 保存在 Web 站点上。

另外,GetString 方法将 Recordset 对象转换成表单,在表单中列和行使用指定的字符分界。

今天看资料时发现了这个东东,不知道以前有人使用过没,刚随便写了2个小例子,可以将数据记录集作为文件(ADTG)保存在硬盘上,使用的时候可以直接打开文件进行记录操作,这样就可以把一些常用的记录集保存起来,使用的时候就不用烦琐的打开数据库,查询表,可以直接打开数据图表文件,岂不是省事多了,没有做更多的测试和研究,写出来让大家都来看看。互相学习学习。

:创建数据视图文件.RsSave.asp

<%

Dim DBPATH

Dim Conn,Rs

DBPATH = Server.MapPath( "Test.mdb" )

Set Conn = New ConnEx ‘ConnEx是一个自己写的类,集合了一些对数据库操作的方法,以前发过的

Conn.DBpath = DBPATH

Conn.Init()

Set Rs = Conn.GetRsBySql( "Select * from admin" ) '返回记录集

Rs.Save Server.MapPath(".")&"\yourFile.adtg", adPersistADTG '创建数据视图在当前目录,不过创建的时候最好先判断一下文件是否存在,否则会报错的.~_~

Rs.Close

Set Rs = Nothing

Set Conn = Nothing

%>

:使用数据试视图文件 RsOpen.asp

<%

Dim DBPATH

Dim Rs

Set Rs = Server.CreateObject( "Adodb.RecordSet" )

Rs.Open Server.MapPath(".")&"\yourFile.adtg" ', adPersistADTG ’打开数据视图文件,详细说明见附录

'Rs.MoveNext

Response.Write( Rs(1) ) '这里使用就和使用普通的记录集一样方便(不完全测试,希望有人能完全测试一下,谢了),HOHO,方便吧

Rs.Close

Set Rs = Nothing

%>

详细资料

Microsoft OLE DB Persistence Provider 支持使用 Recordset 对象 Save 方法将 Recordset 对象保存在文件中。随后,使用 Recordset 对象的 Open、或 Connection 对象的 Execute 方法可恢复持久文件。

Recordset 对象被转换为能被保存在文件中的表单。Recordset 对象可以按所拥有的高级数据图表 (ADTG) 格式保存,或者按打开的可扩展标记语言 (XML) 格式保存。

挂起更改保存在持久文件中。因此,可以发布查询返回 Recordset 对象、编辑记录集、保存该记录集和挂起变化、以后恢复该记录集、然后使用保存的挂起变化更新数据源。

用法

保存记录集:

Dim rs as New ADODB.Recordset

rs.Save "c:\yourFile.adtg", adPersistADTG

使用 Recordset.Open 打开持久文件:

dim rs as New ADODB.Recordset

rs.Open "c:\yourFile.adtg", "Provider=MSPersist",,,adCmdFile

可选地,如果 Recordset 没有活动的连接,则都可以接受所有的默认值和简单的代码:

dim rs as New ADODB.Recordset

rs.Open "c:\yourFile.adtg"

使用 Connection.Execute 打开持久文件:

dim conn as New ADODB.Connection

dim rs as New ADODB.Recordset

conn.Open "Provider=MSPersist"

set rs = conn.execute("c:\yourFile.adtg")

使用 RDS.DataControl 打开持久文件:

在这种情况下,没有设置 Server 属性。

Dim dc as New RDS.DataControl

dc.Connection = "Provider=MSPersist"

dc.SQL = "c:\yourFile.adtg"

dc.Refresh

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有