网络数据库的复制和同步(2)

发表于:2007-06-07来源:作者:点击数: 标签:
与复本操作有关的对象、属性和方法 为了实现复本燥乍, Microsoft Jet数据库引擎提供了多个对象、属性和方法。在这一节中,将介绍与复本操作有关的对象、属性和方法。 1.Document对象和Documents集合 Document对象含有关于对象的一个实例的信息,对象可以是
与复本操作有关的对象、属性和方法

  为了实现复本燥乍, Microsoft Jet数据库引擎提供了多个对象、属性和方法。在这一节中,将介绍与复本操作有关的对象、属性和方法。

  1.Document对象和Documents集合

  Document对象含有关于对象的一个实例的信息,对象可以是一个数据库、表、查询或关系(仅用于Microsoft Jet数据库)。

  每个Container对象有一个包含Document对象的Documents集合(其关系详见VB的帮助文件),这些Document对象描述由Container指定类型的内置对象的实例。表1 列出了Document所描述的对象的类型、其Container对象的名称及Document包含信息的类型。

  Document container 包含的信息

  数据库 数据库 保存的数据库

  表或查询 表或查询 保存的表或查询

  关系 关系 保存的关系

  用Document对象可以实现下列操作:

  ·用Name属性返回由用户或Microsoft Jet数据库引擎在建立对象时给对象所取的名字。

  ·用Container属性返回包含Document对象的Container对象的名称。

  ·用Owner属性设置或返回对象的拥有者。为了设置owner属性,用户必须有对Document对象的写权限,并且必须把userName属性设置为一个现有的user或Group对象的名称。

  ·用UserName属性或Permissions属性设置或返回一个用户或组对象的访问权限。为了设置这些属性,用户必须有对Document对象的写权限,并且必须把userName属性设置为一个现有的User或GrOup对象的名称。

  ·用DateCreated属性和LasUpdated属性分别返回建立Document对象和最后修改Document对象的日期和时间。

  由于一个Document对象对应于一个现有的对象,因此用户不能建立新的Document对象或者删除现有的Document对象。一个Documents集合含有多个Document对象。可以通过以下几种格式引用一个Document对象:

  Documents(0)

  Documents("Name”)

  Documents![name]

  2.container对象和Containers集合

  Contalner对象把相似类型的Document对象放在一个组中。每个Database对象含有由内部container对象组成的Containers集合。应用程序可以定自己的文档类型和相应的容器(仅对Microsoft Jet数据库),但这些对象不一定总是通过DAO支持。某些Container对象由Microsoft Jet数据库引擎定义,也可以由其它应用程序定义。

  Container对象 包含的信息

  数据库 保存的数据库

  表 保存的表及查询

  关系 保存的关系

  说明:

  1.)每个Container对象含有由Document对象组成的Documents集合,通常用Container对象作为到Document对象中信息的直接链接,也可以用container集合为给定类型的Document对象设置安全性。

  2.)用Container对象可以实现以下操作:

  ·用Name属性返回Container对象的预定义名称。

  ·用Permissions和UserName属性来设置container对象的权限;在Container对象的Documents集合中建立Document对象来继承这些访问权限设置。

  ·用owner属性设置或返回Container对象的所有者。为了设置Ower属性,必须写入Container对象的权限,并把属性设置为现有user或Group对象的名称。

  (3)Container对象是由系统预定的,因此不能建立新的container对象,也不能删除现有的Container对象。

  (4)可以通过顺序号或Name属性设置或引用集合中的container对象,例如:

  Containers(0)

  Containers(”name”)

  Containers![Name]

  【例】编写程序,列出Tables容器中的Documents集合。

  在窗体上画一个命令按钮,然后编写如下的事件过程:

  Private Sub Command1_Click()

  Dim dbsnorthwind As Database

  Dim docloop As Document

  Dim prploop As Property

  Set dbsnorthwind = OpenDatabase("e:\f.mdb")

  With dbsnorthwind.Containers!tables

  Debug.Print "documents in " & .Name & "container"

  '列出Table容器中的Documents集合

  For Each docloop In .Documents

  Debug.Print " " & docloop.Name

  Next docloop

  End with

  dbsnorthwind.close

  End sub

该过程列出f.mdb数据库Table容器中的Documents集合。程序运行后,单击命令按钮,即可在“立即”窗口中列出该集合。

(出处:ChinaAsp )

原文转自:http://www.ltesting.net