2010-05-19 73 views
1

我有一個應用程序使用當前分發的訪問2000數據庫。通過VB6中的代碼更新訪問2000數據庫

我需要用客戶計算機上的其他字段更新其中一個記錄集。
我的數據控件正常工作,因爲我已將它們設置爲以訪問2000格式進行連接。但是,當我嘗試在代碼中打開數據庫時,出現無法識別的數據格式錯誤。

在他們的機器上替換或添加數據庫的最佳方法是什麼?

+0

嗨馬克 - 很難說沒有看到你用來連接數據庫的代碼,這將有助於準確地知道你正在使用哪些數據控件。 :-) – 2010-05-19 20:33:58

+0

你的意思是你想改變表格的結構嗎?在我看來,改變你的記錄集只會意味着改變你的代碼。鑑於VB6標籤,我假設你的前端是VB6,而不是Access,所以你應該改變你的應用程序並向其分發更新。 – 2010-05-20 01:08:01

回答

0

可以使用VBScript,ADO和DDL更新Access數據庫。

strCon="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Example.mdb;" _ 
    & "Jet OLEDB:Database Password=pass;" 

Set cn=CreateObject("ADODB.Connection") 
cn.Open strCon 

strSQL="ALTER TABLE Example ADD COLUMN Example Text (20)" 
cn.Execute strSQL 

更多的連接字符串:www.connectionstrings.com

0

我更喜歡使用DAO集合,以更新BE數據庫模式,因爲它讓你在你可以做什麼更多的控制。例如,您可以輕鬆刪除或創建表,記錄,索引和關係。請參閱我的網站上的TempTables.MDB page,其中說明了如何在您的應用程序中使用臨時MDB並提供示例代碼以幫助您入門。

+0

VBScript的優勢在於它非常小巧,易於傳輸(甚至可以進行剪切和粘貼),可以快速編寫,並且可以在沒有安裝Access的站點上運行,只在運行時運行。如果您願意,可以使用DAO和VBScipt。 – Fionnuala 2010-05-20 08:57:07

+0

我更喜歡將代碼放在應用程序中,而不是放在單獨的文件中。我也更喜歡使用DAO,因爲它對Access數據庫文件有更多的控制。儘管對於向表中添加某些字段的這種特定更改可能並不重要。 – 2010-05-20 21:52:14

+0

在Windows的所有副本上是不是使用Jet 4安裝DAO?因此,是不是可以在vbScript中使用DAO? – 2010-05-20 23:25:52