2012-08-09 167 views
0

可能重複:
How to connect to an Access 2003 database located on a web server via HTTP?如何通過互聯網將Delphi連接到遠程MS Access數據庫?

我有一個使用MS Access數據庫工作德爾福計劃,以獲取報告等 現在我想將數據庫遷移到網絡服務器上運行我的網站。該網站也必須能夠連接到數據庫,以更新數據(用戶插入聯繫人詳細信息爲例)。

我現在如何將Delphi程序連接到現在在網絡服務器上的數據庫,而不會丟失任何功能?這可能嗎?

謝謝你的幫助。

+0

在移至Web服務器之前,您如何連接到數據庫? – 2012-08-09 16:52:56

+0

我使用了一個ADO連接 – ricky 2012-08-09 18:19:02

回答

1

其中一宗是提供ADOConnection.Connectionstring DB計算機IP地址:

Data Source=X.X.X.X,Port 
0

如果你遷移Access數據庫到網上,然後你談論使用的新的網絡發佈功能訪問?例如,在中途點的下列視頻中,我切換到在瀏覽器中運行Access數據庫100%。

http://www.youtube.com/watch?v=AU4mH0jPntI

注意,沒有Silverlight或ActiveX下載的需要,而這些出版Access應用程序在任何Web標準兼容的瀏覽器的工作 - 包括我的iPad的Safari。

但是,現在,如果您使用Delphi來打開該mdb文件,請記住您沒有連接到該文件,而只是打開一個文件。

我的意思是說我們連接到一個word文件或者我們連接到一個Powerpoint文件是愚蠢的。所以在辦公套件和那些文件的情況下,我們正在談論飛機Jane windows文件。

一匹馬是一匹馬是一匹馬。

一個文件是一個文件是一個文件。

因此,您不要連接到坐在硬盤上的jpg文件,您打開文件。所以如果你談論你當前的設置,最好在這裏使用正確的術語。您沒有連接到該訪問文件,但實際上是打開一個平面Jane窗口文件。 (如果你仔細看看你的連接字符串,它將始終有一個完全限定的Windows路徑名稱,它解析爲坐在一個文件夾上的文件)。

如果您將這樣的文件放置在Web服務器上(而不是使用Access的Web發佈功能),那麼您仍然需要打開該Windows文件。這意味着您需要某種VPN,並且您還需要安裝Windows文件和網絡系統(這意味着如果這是Linux,則必須運行samba)。

所以你不能通過Web界面打開文件,甚至當你使用FTP或http時,這些並不是真正的「windows」網絡系統,它允許你打開+使用平面Jane窗口文件。

儘管理論上可以通過VPN將windows網絡擴展到服務器,但它不是一種常見的設置,而且通過互聯網使用VPN速度很慢。

因此,請記住這樣一個概念,即您並未真正連接到某個文件,如電源點或位於文件夾中的某個mdb文件 - 您需要打開該文件,並且需要使用Windows網絡系統在Access的情況下執行此打開的文件。實際上訪問實際上對這種開放能力的要求更高,因爲使用Excel或Word,文件可以從服務器全部下載 - 使用Access時,文件不會全部下載,但需要一個真正的工作窗口文件打開命令使用。

因此,這裏的一個選擇是考慮使用Access的Web發佈功能,但是服務器上生成的已發佈應用程序將不再存儲在accDB或mdb文件中 - 而從Delphi中,您可以使用一組的Web服務是公開的Access站點公開的,它允許您更新數據 - 沒有oleDB提供程序,但有Web服務,還可以使用桌面Access客戶端的鏈接表來連接和編輯已發佈的Access Web應用程序。

+0

哈哈,對於錯誤的術語感到抱歉,但您似乎確切地知道我在說什麼。 謝謝你的洞察力,它給了我一些思考和努力。非常感謝,我很感激。 – ricky 2012-08-11 11:49:38

相關問題