2011-04-14 30 views
1

我正在尋找一種方法來實現多個訪問07數據庫的SCM。我們只需要對錶單/代碼進行源代碼控制。訪問2007在多個數據庫的SCM

基本上,我們有100多個結構相同的數據庫,使用相同的代碼/模塊,但每個數據庫僅包含一個客戶端的數據。當我們進行代碼更改時,我們現在必須手動完成每個文件以進行更改。

有沒有人對類似的東西實施了源代碼控制(如果有的話,上帝會幫助你)還是有任何想法?

PS - 我意識到在這裏有很多DailyWTFery,這是一個遺留產品,在我們重寫.NET/MSSQL之前,我已經分配給它做一些緊急維護,但我認爲有足夠的工作來保證將如果可能的話,這是有效的。

回答

2

你可以在this question;它確實涉及使用一些未記錄(或記錄不完善)的命令導出和導入代碼和表單。我還記得使用該方法時發生的校驗和或版本號問題。

但是,通過將數據庫的數據和應用程序端分離爲單獨的文件,然後將錶鏈接添加到應用程序數據庫中,可以解決很多此類問題。然後你將只有一個應用程序數據庫,以及客戶數據庫的連接。

切換到不同的客戶端就像重新鏈接到其他數據庫一樣簡單。

你可以做手工或它的結構是這樣的代碼:

Dim myTable As TableDef 
Dim db As Database 
dim strDBPath as string 

strDBPath = ";DATABASE=C:\workbench\MyNewDB.mdb" 

Set db = CurrentDb 
db.TableDefs.Refresh 
For Each myTable In db.TableDefs 
    If Len(myTable.Connect) > 0 Then 
     myTable.Connect = strDBPath 
     myTable.RefreshLink 
    End If 
Next 

'' Note: This whips through every table in your database and re-links it to the new 
''  DB. ODBC links will have a different value for strDBPath - I'll leave that as 
''  and exercise for the reader