標籤:
Oracle資料訪問組件ODAC(Oracle Data Access Components)顧名思義就是用來訪問Oracle資料庫的小程式。我們可以編程調用這些組件來實現在沒有安裝Oracle資料庫軟體的電腦上完成對Oracle資料庫的訪問。
工具/原料
步驟1. 下載ODAC安裝包
到Oracle官方網站下載ODAC安裝包。在網頁上找到你要的版本。我下載的是:
64-bit ODAC 11.2 Release 6 (11.2.0.4.0) Xcopy for Windows x64
下載下來的安裝包名為:
ODAC112040Xcopy_64bit.zip
END
步驟2. 解壓縮
解壓縮這個zip包,把裡面的檔案都解壓到一個檔案夾裡,我是解壓到D:\ODAC112040Xcopy_64bit,然後開啟cmd,進入到這個檔案夾。
這個檔案夾裡有8個子檔案夾,分別是:
instantclient_11_2:這是Oracle用戶端,所有組件的運行都依賴於這個用戶端;
oledb:這是OLE DB組件
asp.net:這是ASP.NET2組件
asp.net4:這是ASP.NET4組件
odp.net4:這是.NET4組件
odp.net20:這是.NET2組件
oramts:這是Oracle的MTS服務
network:這個檔案夾不用管,它是用來存放tnsnames.ora檔案的,要安裝後才能用。
這裡我們需要搞清楚這些組件之間的依賴關係。
instantclient_11_2是最基礎的
oledb依賴於instantclient_11_2
asp.net依賴於instantclient_11_2和odp.net20
asp.net4依賴於instantclient_11_2和odp.net4
odp.net4依賴於instantclient_11_2
odp.net20依賴於instantclient_11_2
oramts依賴於instantclient_11_2
END
步驟3. 安裝ODAC包
在cmd中運行install.bat批次檔:輸入"install.bat all D:\OracleClient ODAC"(不含雙引號)。這裡有幾個參數需要特別注意,這裡我們傳入了三個參數,但最多可以傳入四個。
第一個參數:all。all代表安裝ODAC112040Xcopy_64bit檔案夾下所有的組件和用戶端。如果你不需要這麼多組件,只用到其中一個,比如只用到了OLE DB組件,就可以像下面這樣只安裝用戶端和這一個OLE DB組件:
install.bat oledb D:\OracleClient ODAC
第二個參數:D:\OracleClient。這是安裝路徑,根據自己的實際情況指定,路徑中盡量不要有空格和圓括弧。
第三個參數:ODAC。這個叫ORACLE HOME NAME,這個參數也可以自己隨便指定一個字串,不一定非得是"ODAC"。這個參數是用來寫入註冊表的。比如,上面這條語句執行後,會在註冊表的以下位置寫入:
HKLM\Software\Oracle\KEY_ODAC
這"KEY_"後面的ODAC就是你在參數中傳入的那個"ODAC"
第四個參數。一般只用前三個參數就夠了,在安裝組件的時候會自動把它依賴的組件都安裝上,但如果你只想安裝指定的組件,不想裝它所依賴的組件,這時才會用到第四個參數。比如:當你安裝asp.net時,如果只用前三個參數,會自動把它所依賴的odp.net20和instantclient_11_2也安裝上,但如果你再傳入第四個參數"false",如下:
install.bat asp.net D:\OracleClient ODAC false
這時就只會安裝asp.net,而不會把odp.net20和instantclient_11_2也裝上。
END
步驟4. 設定環境變數
- 1
ORACLE_HOME=D:\OracleClient
(添加一個環境變數ORACLE_HOME,其值為你的安裝路徑,比如我這裡就是D:\OracleClient)
- 2
PATH=%ORACLE_HOME%;%ORACLE_HOME%\bin;
(在PATH環境變數中添加下面兩個路徑,用分號隔開:
%ORACLE_HOME%;%ORACLE_HOME%\bin;)
END
步驟5. 根據需要配置tnsnames.ora檔案
如果要用組件訪問Oracle資料庫,那麼就要根據需要配置tnsnames.ora檔案,並存放於%ORACLE_HOME%\network\admin目錄下。
我的tnsnames.ora檔案格式如下,供參考:
ORA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.26.231)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ora)
)
)
END
卸載ODAC的方法
-
用cmd進入到ODAC的安裝路徑下,然後運行該路徑下的uninstall.bat批次檔。這裡也是要注意參數的運用。
================================================
若要卸載掉所有組件,可以這樣:
uninstall.bat all ODAC
或者
uninstall.bat all D:\OracleClient
================================================
若要卸載掉某一個指定的組件,可以這樣:
uninstall.bat oledb ODAC
或者
uninstall.bat oledb D:\OracleClient
- 2
手動刪除掉安裝目錄,並把之前添加的環境變數也一併刪除即可
END
注意事項
Oracle資料訪問組件ODAC的安裝方法