Delphi作為強大的資料庫前端開發工具,提供了很多資料庫存取方式的封裝控制項。對於Oracle的資料存取控制項,不管何種資料庫引擎,一般都會封裝一個Connection作為資料集的串連控制項,因此只要設定Connection的相關屬性即可,其它dataset控制項,如query,table等只要指定此Connection即可,用戶端應用程式要串連到Oracle的Schema,一般都需要安裝Oracle Client,並使用Net Manager設定用戶端可以訪問的Oracle Database Server的主機名稱及存取協議、Port等資訊。可以使用以下的方式串連1. dbExpress:dbExpress比較適合串連SQL的資料庫,據說效率挺高的。放置一個dbExpress頁簽下的SQLConnection,在此控制項上點擊滑鼠右鍵,選擇“Edit Connection Properities”功能,並依設定即可。其中Database欄位要設定為Oracle Client中設定的服務名,如果需要記住密碼,而不用每次串連的時候輸入密碼,請將 LoginPrompt屬性設定為False,設定OK後即可測試將Connected:=True看看是否成功,其它資料處理控制項請選擇相應dbExpress頁簽下的控制項即可。2. BDE:BDE應該來說是Borland自己的資料庫引擎了,效率也是相當不錯的。當然也是支援Oracle串連的。使用BDE頁簽下的database控制項,設定方法參考所示:3. ADO:ADO是Microsoft所支援的資料庫連接技術,大有一統windows用戶端資料存取引擎的意思,在.net平台,推出了ADO.NET,更好地支援了XML。DELPHI有對ADO做了一些封裝,使用ADOConnection,通過嚮導設定它的ConnectionString即可,可以參考所示:4. ODBC:ODBC是最傳統的連結方法了,效率相對來說稍微低一些,不過通用性也更強,不建議使用這種方法。使用前需要先到ODBC設定中增加一個資料來源名稱DSN,然後再透過ADO或者BDE組件來實現資料的存取。可以參考如片設定:
5. 不使用控制項,比如使用原生的ADO組件,不太建議這種方法,既然Delphi已經做了封裝,何必又要回到原始狀態呢。以上串連方法都需要安裝Oracle Client軟體,但是Oracle官方的Client太過龐大,安裝非常不便,目前網上有人發布一個精簡版的Oracle Client軟體,比較小,可以滿足串連Oracle的需要,可以去下載這個軟體,而不用去安裝複雜的官方版本。6. 下載ODAC控制項,此控制項不需要安裝Oracle Client,而是使用OCI的方式透過TCP/IP協議直接連接到Oracle Server,可以將程式做成瘦用戶端,程式分發的時候比較方便。此控制項支援Delphi的大部分版本以及C++Builder以及kylix以及.net,而且提供原始碼,有興趣的可以研究一下。具體安裝使用方法請參考控制項的相關說明以及協助文檔。