多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 數據庫 > access > 使ACCESS數據庫保持同步

使ACCESS數據庫保持同步

來源:程序員人生   發布時間:2014-02-11 00:57:09 閱讀次數:4123次

  同步(Synchronization)是數據庫在網絡環境中應用所要涉及到的一個重要概念其基本過程大致分以下幾個步驟首先把一個數據庫設為可復制副本屬性使其成為設計正本(VB中稱設計原版ACCESS中稱設計母版)然后根據應用程序的實現需要從設計正本復制出多個副本(VB中稱復本)這些副本組成一個副本集合(設計正本也被看做是第一個的初始的副本)最后在集中任何復本的數據或結構被更改會時啟用同步機制把改變發送并且應用于此復本集中的其他成員使得副本集中的成員在數據或結構上保持一致性實現同步的這一過程被稱為同步化VB為實現同步在數據庫對象中提供了多個屬性與方法來實現這一過程以下介紹主要的幾個屬性與方法分別對應同步化的幾個步驟

  .Replicable屬性

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

  


 

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

  .MakeReplica方法

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

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

  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 = Then
  dbsTempMakeReplica strNewReplica "Replica of " & strReplicableDB
  Else
  dbsTempMakeReplica strNewReplica "Replica of " & strReplicableDB intOptions
  End If
  dbsTempClose
  ErrorHandler:
  Select Case Err
  Case :
  MakeAdditionalReplica =
  Exit Function
  Case Else:
  MsgBox "Error " & Err & " : " & Error
  MakeAdditionalReplica = Err
  Exit Function
  End Select
  End Function

   .Synchronize方法

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

  表一同步化方向常量

  

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

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

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

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

  Synchronize方法還可對通過Internet互聯的數據庫進行同步化以下語句實現本地數據庫正本與位于Internet服務器上的一個副本同步化dbNwindSynchronize "wwwmycompanymyservercom" & "/files/NwReplicamdb" dbRepImpExpChanges + dbRepSyncInternet

  .PopulatePartial 方法

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

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 国产美女网站视频 | 欧美一区二区视频在线观看 | 天天久 | 毛片亚洲毛片亚洲毛片 | 国产视频二区在线观看 | 国产精品video | 国产欧美在线不卡 | 免费大黄网站在线观 | 91九色最新地址 | 欧美一级视频在线 | 日本69色视频在线观看 | 毛片福利 | 色人阁亚洲 | 欧美野外多人交3 | 亚洲乱码一区二区三区国产精品 | 亚洲国产成人精品青青草原100 | xxxx69欧美hdxxxhd xxxxhd欧美精品 | 国产在线精品一区二区夜色 | 最新日本中文字幕 | 亚洲精品免费在线观看 | 亚洲不卡在线视频 | 亚洲国产人久久久成人精品网站 | 日本 在线观看 | 久久午夜一区二区 | 一级日韩一级欧美 | 午夜免费啪在线观看视频网站 | 亚洲专区一区 | 免费欧美一级 | 日本中文字幕在线播放 | 国内自拍视频在线播放 | 羞羞网站在线看 | 国产福利一区二区精品视频 | 久草成人网 | 在线观看视频h | 中国美女牲交一级毛片 | 久久伊人成人网 | 日本高清www免费视频软件 | 久久久久国产视频 | 欧美激情福利视频在线观看免费 | 最近伦中文字幕高清字幕mv | 欧美xxxxx九色视频免费观看 |