精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>● 数据库技术>>VisualBasic专题>>VB Tip(9) - Persist Recordset

主题:VB Tip(9) - Persist Recordset
发信人: johnnyxu()
整理人: chedong(1999-08-25 23:55:39), 站内信件
VB Tip(9) - Persist Recordset

    当多个数据源绑定到同一Grid控件时,您可能希望在绑定更改后,
原来绑定的数据源(包含对数据源的修改)能够暂时保存,以便将来继
续修改,而不必保存到数据库。因为在用户还未决定是否保存数据时,
您如果在绑定更改前将上次绑定的数据源保存到数据库,显然是不合
理的。
    也许你会说:这还不简单,为每个数据源分别定义一个Recordset
问题不就解决了吗?
    NO!如果用户需要动态地生成一个Recordset,也就是说数据源的
数目不确定时,怎么为每个数据源定义一个Recrodset?
    后来我决定采用Persist Recordset。
    也就是将Recordset的内容用Save方法保存到磁盘文件,用Open方
法从磁盘文件取回Recordset的内容,当用户最终决定保存到数据库时,
再用UpdateBatch。

    With rs
       .Save "文件名"
       .Open "文件名", "Provider=MSPersist", , , adCmdFile
       .ActiveConnection = DataEnvironment1.Connection1.ConnectionStri
ng
       .UpdateBatch adAffectAllChapters
    End With

    在最终决定保存到数据库前,rs被认为是从磁盘文件打开的,而不
是从数据库中取出的,因此先将ActiveConnection属性重置为原始的连
接字符串,如果缺少这一句,rs并不保存到数据库中。

John
[email protected]

--
※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.96.253.137]

[关闭][返回]