C#.NET/PHP連接Access版的金碟財務軟件數據庫

項目需求:

在服務器有個OA產品需要和財務部的金碟軟件交互。但金碟是桌面應用程序,修改起來挺麻煩,想想OA是web 應用程序,嘿嘿。這個好辦,所以就從服務器的PHP OA入手。只要把符合準確的數據存放到金碟的數據庫中,金碟軟件就能正常運行,並顯示出數據。

但問題來了,主要有兩個問題:

1.ACCESS如何局域網內不同電腦相連接?嗯,這個很少接觸,暫且放一邊。

2.金碟軟件的數據庫和一般的ACCESS數據庫有點區別,他有專門的用戶組,包括了Sample.ais和System.mda。此時要想直接把Sample.ais重命名爲"Sample.mdb",再直接打開,是行不通的。只有在 工具 -》安全-》工作組管理員 選擇“加入”選項選擇"System.mda"這樣,再雙擊打開“Sample.mdb"就沒問題了。

好,數據庫能打開了。那現在就是要解決程序的遠程連接ACCESS數據庫的問題。

平時在.net中連接ACCESS數據庫就如下那麼簡單(首先聲明,Sample.mdb的用戶組名爲:morningstar,密碼:ypbwkfyjhyhgzj),則連接語句理所當然爲:

這語句的確沒有錯誤,但卻無法打開該數據庫,會提示“數據庫被佔用,或者無權限”類似這樣的提示,具體的錯誤提示記不清了 :) .

奇怪了,用戶名和密碼是正確了呀 ,爲何不行呢。

問題在這裏呢,它不是還有一個文件麼,叫這個“System.mda”這個就是對應操作該數據庫的用戶組文件,必須得把這個文件引入連接字符串才行吧,好,我們來試試,再改正爲如下:

OK,再測試一下,好了,這下沒問題了吧。嘿嘿。關鍵是加上這一句:System database=D:/System.mda

好了,本地的數據庫測試成功,那遠程的呢。

好,我們把同在局域網的其它臺電腦(假設IP爲:192.168.1.5)上的Sample.ais和System.mda所在文件夾共享出來。

則,我們的連接語句又可以改成這樣:

大功告成,程序運行成功!!

這是在.net裏的寫法,當然,在其它程序裏的寫法其實也是一樣,直接把Provider=Microsoft.Jet.OLEDB.4.0;Data Source=//192.168.1.5/Sample.ais;User ID=morningstar;Password=ypbwkfyjhyhgzj;Jet OLEDB:System database=//192.168.1.5/System.mda這一段照搬過去就OK了。

記錄一下,希望能幫助更多朋友少走一些彎路,多一些時間去處理業務的操作。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章