掃二維碼與項(xiàng)目經(jīng)理溝通
我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問(wèn)/技術(shù)咨詢(xún)/運(yùn)營(yíng)咨詢(xún)/技術(shù)建議/互聯(lián)網(wǎng)交流
本文介紹了C#連接Oracle數(shù)據(jù)庫(kù)的過(guò)程。通過(guò)instant client和ODP.net中的Oracle.DataAccess.dll,我們就可以方便的部署.net應(yīng)用程序或者站點(diǎn),而不需要安裝Oracle客戶(hù)端。接下來(lái)我們就介紹這一過(guò)程。

1. ODAC的安裝
在oracle的官方網(wǎng)站上下載與你安裝的oracle對(duì)應(yīng)版本的ODAC。
下載地址:ODAC Download
下載好后解壓安裝,安裝時(shí)不用安裝全部的組件。主要安裝以下組件:
2. 環(huán)境變量的設(shè)置
設(shè)置Windows的環(huán)境變量:
ORACLE_HOME :ODAC的安裝目錄(類(lèi)似 ~\app\Administrator\product\11.1.0\client_1);
LD_LIBRARY_PATH :%ORACLE_HOME%;
TNS_ADMIN : %ORACLE_HOME%;
在PATH的最前面追加:%ORACLE_HOME%;
3. 監(jiān)聽(tīng)文件tnsnames.ora的配置
在目錄%ORACLE_HOME%下新建文件tnsnames.ora,內(nèi)容如下:
- 數(shù)據(jù)庫(kù)SID =
- (DESCRIPTION =
- (ADDRESS_LIST =
- (ADDRESS = (PROTOCOL = TCP)(HOST = Oracle主機(jī)名或者IP)(PORT = 1521))
- )
- (CONNECT_DATA =
- (SERVICE_NAME = 數(shù)據(jù)庫(kù)SID)
- )
- )
4. plsqldev
這樣配置好后,plsqldev就可以連接上oracle數(shù)據(jù)庫(kù)了。
5. C#連接Oracle
C#連接oracle的示例代碼如下:
- OracleConnection conn =
- new OracleConnection();
- try
- {
- conn.ConnectionString = ConfigurationManager.ConnectionStrings["oradb"].ConnectionString;
- conn.Open();
- string sql = " select id,content from test"; // C#
- OracleCommand cmd = new OracleCommand(sql, conn);
- cmd.CommandType = CommandType.Text;
- OracleDataReader dr = cmd.ExecuteReader(); // C#
- List
contents = newList (); - while(dr.Read())
- {
- contents.Add(dr["content"].ToString());
- }
- listBox1.ItemsSource = contents;
- }
- catch(Exception ex)
- {
- MessageBox.Show(ex.Message);
- }
- finally
- {
- conn.Clone();
- }
在程序app.config或者web.config中追加數(shù)據(jù)庫(kù)連接的配置。
- (ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.1)(PORT=1521)))
- (CONNECT_DATA=(SERVICE_NAME=****)));
- User Id=***;Password=***;"/>
按照上述的步驟執(zhí)行,如果沒(méi)有錯(cuò)誤,就可以成功地連接數(shù)據(jù)庫(kù)了。

我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問(wèn)/技術(shù)咨詢(xún)/運(yùn)營(yíng)咨詢(xún)/技術(shù)建議/互聯(lián)網(wǎng)交流