Oracle免用戶端For .Net(只為用NewLife.XCode開發Oracle的同學服務)

來源:互聯網
上載者:User

    自從發布了一篇部落格Oracle免用戶端For .Net(增加分析Devart和DataDirect)後,非常非常多的同學前來問各種Oracle用戶端運行時安裝配置的問題,嚴重影響了我們團隊的正常工作和日常交流。我甚至多次懷疑我是不是不應該發那篇博文,但是又不忍心刪除!

    我們寫那篇博文的初衷,僅僅是為使用我們的資料對應架構XCode(包含ORM)進行Oracle開發的同學而準備

    只是因為這些技術點對於非XCode使用者也有用,所以才發出來。不曾想,給我們自己帶來這麼多的麻煩。

    這裡先為XCode使用者做一點補充,非XCode使用者請直接跳過,看結尾!

 

1,新版本XCode內建Oracle用戶端運行時的環境檢測,自動在這些目錄尋找OCI:目前的目錄、上一級的OracleClient目錄、各個盤下的OracleClient目錄

2,XCode支援在連接字串裡面通過DllPath=X:\OracleClient來指定OCI目錄

3,如果XCode檢測不到任何Oracle用戶端運行時,會自動到伺服器下載一份,並部署到C:\OracleClient。可以自己拷貝到別的盤去

4,所以,XCode使用者可以用MSSQL或SQLite等資料庫開發好應用程式,然後部署的時候修改連接字串為Oracle的連接字串即可,XCode會為你準備好環境。

5,XCode所支援的各大資料庫,只要有連接字串,就可以工作!

6,除MSSQL外,使用其它資料庫全部會自動下載相應的驅動(分x86和x64):Access、SqlCe、SQLite、Oracle、MySql、Firebird、PostgreSQL

7,如果生產環境機器不能上網,可以自己把驅動等相關檔案拷貝帶走。只有用Oracle時會有一個目錄放在C:\OracleClient,其它資料庫下載的驅動檔案全部放在目前的目錄。(主要是因為OCI那個目錄太大)

8,XCode只做下載驅動來使用,不修改系統內容變數和註冊表等任何東西,絕對綠色。

9,如果你只想要一個Oracle用戶端運行時,可以用我們代碼產生器XCoder上新增的一個功能(“Oracle用戶端運行時檢查”),它會給你準備好一個可用環境

 

最新版XCoder下載連結:http://www.kuaipan.cn/file/id_2378544298616942.html

 

非XCode使用者請看:

1,只要有OCI,可以不用安裝Oracle的任何東西,就可以連上資料庫,可能需要配置一下環境變數和註冊表

2,該方法無視任何程式設計語言,非.Net的也可以。比如那個PL Dev,只需要拷貝OCI,然後選項裡面指定oci目錄即可

3,如果你懷疑上述兩點,你可以不用看本文了

4,OCI.dll的版本和Oracle.DataAccess.dll要求的版本必須一致,不一致就自己湊,找到一致的

5,.Net程式調用Oracle.DataAccess.dll,而Oracle.DataAccess.dll會找OCI.dll,順序是:目前的目錄、設定檔指定目錄、環境變數Path、系統目錄

6,如果上面一點沒看懂,只怪你Windows沒學好。目錄搜尋邏輯是Windows開發的基本功。

7,再次重申,所做的一次,配置環境變數也好,配置註冊表也好,只是為了找到OCI.dll!!!

8,哦,忘了一點,注意OCI所在目錄的許可權,也許應用程式沒有許可權執行OCI.dll。另外注意各個目錄配置可能導致的DLL版本衝突。

100,據Oracle官方論壇說,官方即將推出純託管的驅動,到時候只要一個dll就行,再也沒有這麼多煩人的事情。如果上面這麼多辦法都不行,就等等吧。

10000,如果還不行,那就用XCode算了!

 

最後:

    在確定你有仔細閱讀、思考這兩篇博文的內容之前,請不要打攪我們!僅作技術交流,我們不承擔任何後果!

 

歡迎各種.Net及逆向工程的交流,QQ群:1600800

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.