⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 网络数据库的复制和同步(3).htm

📁 写给JSP初级程序员的书
💻 HTM
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0057)http://eps.www85.cn4e.com/java/article/devshow.asp?id=193 -->
<HTML><HEAD><title>csdn_网络数据库的复制和同步(3)</TITLE>
<META content="text/html; charset=gb2312" http-equiv=Content-Type>
<STYLE type=text/css>TD {
	FONT-FAMILY: "Verdana", "Arial", "宋体"; FONT-SIZE: 9pt
}
A {
	COLOR: #660000; TEXT-DECORATION: underline
}
A:hover {
	COLOR: #660000; TEXT-DECORATION: none
}
.line {
	LINE-HEIGHT: 14pt
}
</STYLE>

<META content="MSHTML 5.00.2920.0" name=GENERATOR></HEAD>
<BODY bgColor=#ffffff text=#000000>

  <table><tbody>
  <TR>
    <TD height=21>
      <DIV align=center><B><FONT size=3>网络数据库的复制和同步(3) <BR><FONT 
      size=2> 
      </FONT></FONT></FONT>
      <HR align=center color=#cccccc noShade SIZE=1>
      </DIV></TD></TR>
  <TR>
    <TD class=line><FONT 
      color=#333300>3.property对象与Properties集合<BR><BR>  Property对象用来描述一个DAO对象的内部属性或用户定义属性,与DAO对象及Properties集合的关系为DAO对象包含Properties集合,Properties集合包含property对象。(其关系详见VB帮助文件)<BR><BR>  除Connection和Error对象外,每个DAO对象都含有一个property集合,在该集合中有与相应的DAO对象的内部属性一致的Property对象。同时,用户可以定义Property对象并将其加入某些下列DAO对象的Properties集合:<BR><BR>  ·Database,&nbsp;Index,&nbsp;QueryDef和TableDef对象<BR><BR>  ·TableDef对象和QueryDef对象的Fields集合中的Field对象<BR><BR>  Property有4个预定义的属性:<BR><BR>  ·Name属性:是一个字符串,属性的唯一标识。<BR><BR>  ·Type属性:是一个整型数(Integer),用来指定属性的数据类型。<BR><BR>  ·Value属性:是一个包含属性设置的Variant类型的值。<BR><BR>  ·Inherited属性:是一个Boolean值,用来指示属性是否从另一个对象继承而来。<BR><BR>  Property对象既有预定义的属性,也有用户定义的属性,在引用时,其格式是不一样的。顶定义属性的引用格式为:<BR><BR>  对象.属性<BR><BR>  而用户定义的属性必须采用下面的引用格式:<BR><BR>  对象.Properties.(“属性”)<BR><BR>  【例】编写程序,列出Tables容器中的Documents集合,然后列出集合中的第一个Document对象的Properties集合。<BR><BR>  在窗体上画一个命令按钮,然后编写如下事件过程:<BR><BR>  Private&nbsp;Sub&nbsp;Command1_Click()<BR><BR>  Dim&nbsp;dbsnorthwind&nbsp;As&nbsp;Database<BR><BR>  Dim&nbsp;docloop&nbsp;As&nbsp;Document<BR><BR>  Dim&nbsp;prploop&nbsp;As&nbsp;Property<BR><BR>  Set&nbsp;dbsnorthwind&nbsp;=&nbsp;OpenDatabase("e:\f.mdb")<BR><BR>  With&nbsp;dbsnorthwind.Containers!tables<BR><BR>   Debug.Print&nbsp;"documents&nbsp;in&nbsp;"&nbsp;&amp;&nbsp;.Name&nbsp;&amp;&nbsp;"container"<BR><BR>   For&nbsp;Each&nbsp;docloop&nbsp;In&nbsp;.Documents<BR><BR>    Debug.Print&nbsp;"&nbsp;"&nbsp;&amp;&nbsp;docloop.Name<BR><BR>   Next&nbsp;docloop<BR><BR>   With&nbsp;.Documents(0)<BR><BR>    Debug.Print&nbsp;"properties&nbsp;of"&nbsp;&amp;&nbsp;.Name&nbsp;&amp;&nbsp;"document"<BR><BR>    On&nbsp;Error&nbsp;Resume&nbsp;Next<BR><BR>    For&nbsp;Each&nbsp;prploop&nbsp;In&nbsp;.Properties<BR><BR>     Debug.Print&nbsp;"&nbsp;"&nbsp;&amp;&nbsp;prploop.Name&nbsp;&amp;&nbsp;"="&nbsp;&amp;&nbsp;prploop<BR><BR>    Next&nbsp;prploop<BR><BR>    On&nbsp;Error&nbsp;GoTo&nbsp;0<BR><BR>   End&nbsp;With<BR><BR>  End&nbsp;With<BR><BR>  dbsnorthwind.Close<BR><BR>  End&nbsp;Sub<BR><BR>程序的前半部分与前面的例子相同,后半部分列出第一个Document对象(即Documents(0)&nbsp;的&nbsp;Properties集合。运行程序,单击命令按钮,即可在“立即”窗口中列出上述内容。<BR><BR>  用户定义的属性通过CreateProperty方法来定义,用该方法可以建立由用户定义的Property对象(仅Microsoft&nbsp;Jet&nbsp;工作区),用于Database,Document,Field,Index,QueryDef和TableDef对象。其格式为:<BR><BR>  set&nbsp;property=对象.CreateProperty(name,type,value,DDL)<BR><BR>  各参数的含义如下:<BR><BR>  ·property:对象变量,要建立的Property对象。<BR><BR>  ·Object:对象变量,可以是Database,Field,Index,QueryDef和TableDef对象,可以对这些对象建立Property对象。<BR><BR>  ·name:&nbsp;可选。&nbsp;variant类型(字符串子型),唯一地命名新的Property对象。<BR><BR>  ·type:&nbsp;可选。&nbsp;常数,定义新Property对象的类型。<BR><BR>  ·value:可选。&nbsp;variant类型,指定属性的初值。<BR><BR>  ·DDL:&nbsp;可选。&nbsp;Variant类型(Boolean子型),用来指示该属性是否是一个DDl对象,缺省值为False。如果DDL为True,则不能删除这个property&nbsp;对象(除非得到&nbsp;dbsecWriteDef的允许)。<BR><BR>  说明:<BR><BR>  1.)只能在一个永久对象的Property集合中建立用户定义的Property对象。在用CreateProperty&nbsp;方法建立Property对象时,如果省略了一个或多个可选参数,则可在向一个集合追加新的对象之前,用赋值语句设置或重新设置相应的属性。在向集合中追加新的对象之后,可以改变其属性设置的一部分(不是全部)。<BR><BR>  2.)如果name参数指的是该集合中已经存在的对象成员,则当用Append方法追加时,将会出现错误。<BR><BR>  3.)为了从集合中删除一个由用户定义的属性对象,可以用集合的Delete方法来实现。该方法只能删除用户定义的对象,不能删除预定义属性。<BR><BR>  4.)如果省略了DDL参数,则缺省为False&nbsp;(即非DDL)。在这种情况下,没有出现相应的DDL属性,如果需要将一个Property对象由DDL变为DDL,则必须先删除,然后再重新建立。<BR><BR>  5.)CreateProperty方法中的type参数是一个符号常量,它是Property对象的设置值或返回值,其可能的取值见表3<BR><BR>  type参数的取值<BR><BR>  常数&nbsp;  类型&nbsp;  常数&nbsp;  类型<BR><BR>  dbBigInt&nbsp;Big整型数&nbsp;dbGUID&nbsp;GUID<BR><BR>  dbBinary&nbsp;二进制&nbsp;dbInteger&nbsp;整型数<BR><BR>  dbBoolean&nbsp;布尔值&nbsp;dbLong&nbsp;长整型数<BR><BR>  dbByte&nbsp;字节&nbsp;dbLongBinary&nbsp;长二进制(OEL对象)<BR><BR>  dbChar&nbsp;字符&nbsp;dbMemo&nbsp;Memo<BR><BR>  dbCurrency&nbsp;货币&nbsp;dbNumeric&nbsp;数值<BR><BR>  dbDate&nbsp;日期/时间&nbsp;dbsingle&nbsp;单精度<BR><BR>  dbDecimal&nbsp;十进制&nbsp;dbText&nbsp;文本<BR><BR>  dbDouble&nbsp;双精度&nbsp;dbTime&nbsp;时间<BR><BR>  dbFloat&nbsp;浮点数&nbsp;dbTimeStamp&nbsp;TimeStamp<BR><BR>  dbVarBinary&nbsp;VarBinary<BR><BR>设MyDB是一个Database对象变量,MyPro是一个Property对象变量,则可以用下面的程序建立Property对象:<BR><BR>  set&nbsp;MyPro=MyDB.createProperty()<BR><BR>  MyPro.Name="NewDefined"<BR><BR>  MyPro.Type=dbText<BR><BR>  MyPro.Value="这是一个用户定义的属性"<BR><BR>可以用下面的语句把新建立的属性加到Properties集合中:<BR><BR>  MyDB.Properties.Append&nbsp;prpNew<BR><BR>  【例】编写程序,建立用户定义的Property对象,并把它加到Properties集合中。在窗体上画一个命令按钮,然后编写如下的事件过程。<BR><BR>  Private&nbsp;Sub&nbsp;Command1_Click()<BR><BR>   Dim&nbsp;dbsnorthwind&nbsp;As&nbsp;Database<BR><BR>   Dim&nbsp;prpnew&nbsp;As&nbsp;Property<BR><BR>   Dim&nbsp;prploop&nbsp;As&nbsp;Property<BR><BR>   Set&nbsp;dbsnorthwind&nbsp;=&nbsp;OpenDatabase("e:\f.mdb")<BR><BR>   With&nbsp;dbsnorthwind<BR><BR>    '建立并添加用户定义的属性<BR><BR>    Set&nbsp;prpnew&nbsp;=&nbsp;.CreateProperty()<BR><BR>    prpnew.Name&nbsp;=&nbsp;"userdefinednew"<BR><BR>    prpnew.Type&nbsp;=&nbsp;dbText<BR><BR>    prpnew.Value&nbsp;=&nbsp;"this&nbsp;is&nbsp;a&nbsp;user_definednew&nbsp;property."<BR><BR>    .Properties.Append&nbsp;prpnew<BR><BR>    '列出当前数据库的所有属性<BR><BR>    Debug.Print&nbsp;"properties&nbsp;of&nbsp;"&nbsp;&amp;&nbsp;.Name<BR><BR>    For&nbsp;Each&nbsp;prploop&nbsp;In&nbsp;.Properties<BR><BR>    With&nbsp;prploop<BR><BR>     Debug.Print&nbsp;"&nbsp;"&nbsp;&amp;&nbsp;Name<BR><BR>     Debug.Print&nbsp;"&nbsp;type:"&nbsp;&amp;&nbsp;.Type<BR><BR>     Debug.Print&nbsp;"&nbsp;inherited:"&nbsp;&amp;&nbsp;.Inherited<BR><BR>    End&nbsp;With<BR><BR>    Next&nbsp;prploop<BR><BR>    End&nbsp;With<BR><BR>  End&nbsp;Sub<BR><BR>上述程序建立了一个名为userdefinednew的属性,其类型为dbText,初值为“this&nbsp;is&nbsp;a&nbsp;user_definednew&nbsp;property。”运行程序,单击按钮,将建立该属性,并在立即窗口中显示当前数据库的所有属性。(包括新建立的属性)&nbsp; 
      </FONT></TD></TR>
  <TR>
    <TD height=5>
      <HR align=center color=#cccccc noShade SIZE=1>
    </TD></TR></TBODY></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -