亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > Access > 正文

使Access數據庫保持同步的思路分析

2019-12-13 14:31:48
字體:
來源:轉載
供稿:網友

  同步(Synchronization)是數據庫在網絡環境中應用所要涉及到的一個重要概念。其基本過程大致分以下幾個步驟:

  1、首先把一個數據庫設為可復制副本屬性,使其成為設計正本(VB中稱設計原版,ACCESS中稱設計母版)。

  2、然后根據應用程序的實現需要從設計正本復制出多個副本(VB中稱復本),這些副本組成一個副本集合(設計正本也被看做是第一個的、初始的副本)。

  3、最后在集中任何復本的數據或結構被更改會時啟用同步機制把改變發送并且應用于此復本集中的其他成員,使得副本集中的成員在數據或結構上保持一致性。

  實現同步的這一過程被稱為同步化。VB6.0為實現同步,在數據庫對象中提供了多個屬性與方法來實現這一過程,以下介紹主要的幾個屬性與方法,分別對應同步化的幾個步驟:

  1.Replicable屬性:

  Replicable屬性用來使一個數據庫對象或數據庫中的表對象、查詢對象等對象成為可復制副本的,即成為設計正本。但數據庫對象并不提供Replicable這一屬性,因此首先要用CreatePropety方法來創建它,然后把它添加到對象的屬性集中,最后再給它賦值,使數據庫成為設計正本。對于數據庫對象而言,把Replicable屬性設置為“T”將使數據庫對象成為可復制的。以下代碼將使VB6.0安裝目錄下附帶的Nwind.mdb數據庫成為一個設計正本(為確保安全建議在操作前備份這一庫文件):

 

  Private Sub Command1_Click()
Dim dbNwind As Database
'如果末引用DAO則一定要先引用
Dim prpNew As Property
Set dbNwind = OpenDatabase("Nwind.mdb", True)
With dbNwind
'建立Replicable屬性,如果已經存在該屬性則程序略過這一步
On Error Resume Next
Set prpNew = .CreateProperty("Replicable", dbText, "T")
.Properties.Append prpNew
'設置數據庫的Replicable屬性為True
.Properties("Replicable") = "T"
.Close
End With
End Sub

  2.MakeReplica方法:

  MakeReplica方法從設計正本復制出一個新的完全副本。其語法為:database.MakeReplica replica, description, options,其中replica是代表一個新副本路徑名稱的字符串;description是對正在創建的新副本的一個描述字符串;options是一個可選項,可以是dbRepMakePartial常量(創建一個部分副本)或dbRepMakeReadOnly常量(防止用戶修改新副本中的可復制對象),如果要建立的是一個只讀式的部分副本,則要加入參數常量 dbRepMakeReadOnly + dbRepMakePartial 。

  在第一個例子中,在關閉數據庫之前加入代碼:.MakeReplica "NwReplica", "replica of nwind.mdb",則從Nwind.mdb設計正本復制出一個名為NwReplica.mdb的副本,位置在Nwind.mdb同一目錄中。以下是一個通過傳遞參數的形式,在實際應用中可供靈活調用的函數,每調用該函數一次即可實現新建一個副本:

  Function MakeAdditionalReplica(strReplicableDB As String, strNewReplica As String, intOptions As Integer) As Integer

  Dim dbsTemp As Database

  On Error GoTo ErrorHandler

  Set dbsTemp = OpenDatabase(strReplicableDB)

  ' 如果在調用此函數時,intOptions處末給出參數, 則忽略該參數項,

  '默認建立一個完全的、可讀/寫的副本,否則就利用提供的參數按要求建立副本

  If intOptions = 0 Then

  dbsTemp.MakeReplica strNewReplica, "Replica of " & strReplicableDB

  Else

  dbsTemp.MakeReplica strNewReplica, "Replica of " & strReplicableDB, intOptions

  End If

  dbsTemp.Close

  ErrorHandler:

  Select Case Err

  Case 0:

  MakeAdditionalReplica = 0

  Exit Function

  Case Else:

  MsgBox "Error " & Err & " : " & Error

  MakeAdditionalReplica = Err

  Exit Function

  End Select

  End Function

  3.Synchronize方法:

  Synchronize方法使兩個完全副本(包括設計正本)同步化。其語法為:database.Synchronize pathname, exchange。其中pathname為要同步的目標副本的路徑名稱字符串(串中的 .mdb擴展名可省略);exchange用來標識兩個數據庫之間的同步方向(如表一),這是一個可選項,默認為表中的第三個選項,即雙向交換。利用表中第四個dbRepSyncInternet常量選項,還可對通過Internet互聯的數據庫進行同步化,

  這時要將代表本地網絡路徑選項pathname用URL地址來代替。

  表一、同步化方向常量

常量 同步化方向
DbRepExportChanges 從數據庫到副本路徑名稱
DbRepImportChanges 從副本路徑名稱到數據庫
DbRepImpExpChanges 雙向交換改變(默認)
DbRepSyncInternet 在通過Internet路徑連接的數據庫之間傳遞改變

  在同步化操作之前,要確保已經利用 Replicable屬性使一個數據庫初始出設計正本,并且利用MakeReplica方法復制出了一個以上的副本。

  以下通過在第一個例子添加的副本復制語句之后,加入如下語句:.Synchronize "NwReplica.mdb", dbRepExportChanges,實現把數據庫Nwind的設計正本的任何改變傳遞給副本 NwReplica。我們可以在Nwind.mdb庫中改變一些數據內容,然后再運行這一例子,我們會發現Nwind.mdb庫的改變已經反映在NwReplica.mdb這一副本中了。

  以上語句實現從數據庫到副本路徑名稱的同步(把設計正本的數據或結構改變傳遞給副本),把dbRepExportChanges常量改為dbRepImportChanges和dbRepImpExpChanges可分別實現從副本路徑名稱到數據庫(數據庫接收副本上的改變)以及雙向交換(兩者間的雙向數據傳遞)同步。

  Synchronize方法還可對通過Internet互聯的數據庫進行同步化,以下語句實現本地數據庫正本與位于Internet服務器上的一個副本同步化:dbNwind.Synchronize "www.mycompany.myserver.com" & "/files/NwReplica.mdb", dbRepImpExpChanges + dbRepSyncInternet

  4.PopulatePartial 方法:

  上面介紹利用Synchronize方法使兩個完全副本同步化,不會出現問題,但如果用一個完全副本來同步一個部分副本,因為部分副本是由副本過濾器來從完全副本來過濾重新生成的,因此可能在部分副本中產生所謂的“孤立”記錄,即這些記錄不能再與其他副本保持同步。要解決這一問題引入了另一個稱為PopulatePartial的方法,該方法與Synchronize方法類似,只不過它是實現部分副本與完全副本的同步,在同步時,首先清除部分副本中的所有記錄,然后根據當前副本的過濾器來重新生成部分副本,這樣就解決了“孤立”記錄的問題。其語法為:database.PopulatePartial dbname。dbname是完全副本的路徑名稱。由于篇幅所限以及其與Synchronize方法的相似性,因此在此不再累述,更詳細的描述請參閱相關的聯機幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久久精品在线观看| 国产欧美亚洲视频| 日韩精品中文字幕久久臀| 国产精品久久久久9999| 国产丝袜精品第一页| 欧美一区二区三区免费视| 日日摸夜夜添一区| 亚洲午夜国产成人av电影男同| 亚洲成人免费网站| 91禁国产网站| 国产一区二区日韩精品欧美精品| 最近中文字幕mv在线一区二区三区四区| 日韩成人激情影院| 欧美激情精品久久久久久蜜臀| 亚洲国产精品成人一区二区| 日韩美女视频免费在线观看| 一区二区福利视频| 午夜美女久久久久爽久久| 日韩av在线天堂网| 久久精品夜夜夜夜夜久久| 久久久之久亚州精品露出| 亚洲free性xxxx护士hd| 亚洲国产精品久久久久秋霞不卡| 亚洲精品日韩在线| 亚洲视频axxx| 亚洲欧洲一区二区三区在线观看| 5566日本婷婷色中文字幕97| 国产精国产精品| 久久视频在线观看免费| 国产精品久久999| 久久天天躁夜夜躁狠狠躁2022| 伊人激情综合网| 亚洲欧洲在线播放| 欧美日韩国产中文精品字幕自在自线| 欧美日韩另类视频| 欧美日韩国产综合新一区| 国产成人综合精品| 国产日韩在线免费| 国产v综合v亚洲欧美久久| 亚洲区免费影片| 欧美日韩xxx| 亚洲福利在线视频| 欧美国产一区二区三区| 中文字幕日韩精品有码视频| 日本19禁啪啪免费观看www| 日本高清不卡的在线| 国产日韩欧美成人| 久青草国产97香蕉在线视频| 国产美女久久久| 日韩在线欧美在线国产在线| 欧美成人在线免费| 亚洲欧美中文日韩在线v日本| 久久久人成影片一区二区三区观看| 国产亚洲精品美女久久久| 国内精品在线一区| 欧美精品www在线观看| 亚洲国产精品va在线看黑人动漫| 国产v综合ⅴ日韩v欧美大片| 欧美国产亚洲视频| 精品久久久久人成| 中文字幕视频一区二区在线有码| 国产成人精品久久亚洲高清不卡| 日韩中文字幕视频在线| 这里只有精品在线播放| 蜜臀久久99精品久久久无需会员| 一本色道久久88综合日韩精品| 亚洲精品视频在线播放| 一区二区中文字幕| 在线视频欧美日韩| 亚洲欧美日韩精品| 亚州av一区二区| 成人妇女淫片aaaa视频| 欧美另类极品videosbestfree| 中文国产成人精品| 91丝袜美腿美女视频网站| 久久香蕉国产线看观看网| 国产精品com| 狠狠躁夜夜躁人人躁婷婷91| 伊人久久久久久久久久| 欧美中文字幕视频| 亚洲大胆人体在线| 久久精品色欧美aⅴ一区二区| 亚洲国产一区自拍| 久久久久久久国产精品视频| 久久久国产视频| 久久亚洲精品视频| 精品国内产的精品视频在线观看| 久久在线观看视频| 91沈先生在线观看| 国产亚洲日本欧美韩国| 久久久女女女女999久久| 欧美日韩国产精品| 久久精品久久久久久国产 免费| 亚洲国产精品va在线看黑人动漫| 国产在线观看一区二区三区| 在线丨暗呦小u女国产精品| 亚洲国产成人精品女人久久久| 国产综合福利在线| 亚洲美女又黄又爽在线观看| 在线观看中文字幕亚洲| 另类美女黄大片| 亚洲精品suv精品一区二区| 国产999精品视频| 亚洲欧洲视频在线| 国产亚洲美女精品久久久| 97在线视频免费播放| 一区二区三区 在线观看视| 91精品国产免费久久久久久| 国产97在线视频| 中文字幕自拍vr一区二区三区| 欧美专区福利在线| 高清欧美性猛交| 伊人伊成久久人综合网小说| 奇米4444一区二区三区| 亚洲国产精久久久久久| 久久中文字幕在线视频| 91在线观看免费高清完整版在线观看| 国模私拍一区二区三区| 4438全国成人免费| 国产精品对白刺激| 久久影院中文字幕| 国产91精品视频在线观看| 菠萝蜜影院一区二区免费| 8x海外华人永久免费日韩内陆视频| 国内精品久久久久久久| 亚洲最大福利网站| 性色av一区二区三区| 国产日韩欧美视频在线| 美女啪啪无遮挡免费久久网站| 欧美性色19p| 夜夜嗨av色综合久久久综合网| 欧美精品成人91久久久久久久| 国产日本欧美一区二区三区在线| 国产精品亚洲一区二区三区| 亚洲国产成人久久综合一区| 精品久久久久久久久久久久久| 日韩视频免费大全中文字幕| 久久综合久中文字幕青草| 2023亚洲男人天堂| 欧美老肥婆性猛交视频| 国产精品青草久久久久福利99| 欧美日韩亚洲国产一区| 欧美精品在线视频观看| 亚洲欧美中文在线视频| 在线播放国产一区二区三区| 丝袜亚洲欧美日韩综合| 2021国产精品视频| 2019中文在线观看| 欧美老少做受xxxx高潮| 成人www视频在线观看| 亚洲视频在线免费看| 亚洲精品国产精品国自产在线| 色噜噜久久综合伊人一本| 日韩精品在线观看一区| 久久69精品久久久久久国产越南| 亚洲午夜精品久久久久久久久久久久| 成人久久久久久久| 亚洲一区二区三区视频| 欧美一区二粉嫩精品国产一线天| 成人性生交大片免费看小说| 九九热精品视频在线播放| 国产精品久久久久77777| 懂色av一区二区三区| 亚洲成av人片在线观看香蕉|