萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> asp.net編程 >> asp.net 連接Oracle數據庫

asp.net 連接Oracle數據庫

 

代碼如下  

connectionString="Password=czh;User ID=czh;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.168.211)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=skydream)));"

  HOST:服務器IP或者服務器名稱

  SERVICE_NAME:oracle數據名稱

  User ID:oracle 用戶名

  Password:oracle用戶密碼

  如果oracle數據庫和web在同一台服務器上 可以寫成

  connectionString="Password=czh;User ID=czh;Data Source=skydream;"

  下面我們要開始查詢數據了,

  准備工作:

  A、安裝Oracle Client。我安裝的是oracle 10g。如果使用Data Source=IP地址,就必須安裝客戶端

  1、在.net中添加引用System.Data.OracleClient

  2、定義連接方式(綁定數據到GridView):string strConn=“Data Source=IP地址;User ID=賬號;Password=密碼”;

代碼如下  

OracleConnection conn=new OracleConnection(strConn); ---實例化連接

conn.open();

string strSql="select * from Table";

OracleDataAdapter da=new Oracle DataAdapter(strSql,conn);

DataTable dt=new DataTable();

da.Fill(dt);

conn.Close();

Gridview1.DataSource=dt;

Gridview1.DataBind();

  綁定成功。

  B、如果沒有安裝oracle的客戶端,從一些資料查看到可以使用:

代碼如下  

string StrConn=“Data Source=(

DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = *.*.*.*)(PORT = **))

)

(CONNECT_DATA =

(SERVICE_NAME = 服務名)

)

);

  user ID=賬號;Password=密碼;”;-----未做驗證

  B 、關於讀取數據庫的集中方式:

  1.1、就是A中的實例

  Update、insert更新查詢oracle數據庫內容*

代碼如下  

OracleConnection conn=new OracleConnection(strConn);

conn.open();

string strSql=“update tabel1 set column1=‘’ where …”;

or strSql=“insert into table1 values(‘’,’’)”;

OracleCommand ocd=new OracleCommand(strSql,conn);

int intResult=ocd.ExecuteNonQuery();

conn.closed();

  讀取查詢oracle數據庫內容

代碼如下  

String strSql=“select * from tblproject”;
OracleCommand cmd=new OracleCommand(strSql,conn);
OracleDataReader dr=cmd.ExecuteReader();
If(dr.Read())

{……}

cmd.Dispose();

dr.Dispose();

conn.Closed();

  在連接過程中我出現過一些問題,下面也分享給各位同學連接ORACLE出錯

  當在asp.net應用中使用數據訪問的組件(調用System.Data.OracleClient)時,程序報“System.Exception: System.Data.OracleClient requires Oracle client software version 8.1.7 or greater”的錯誤,無法創建OracleConnection。

  A 當Oracle 9.2運行在NTFS的分區上時,對於某些非administrator組的用戶,ORACLE_HOME 目錄是不可見的,而在windows server 2003下asp.net應用使用的帳戶是netword service,因此無法創建oracle連接,只要重設一下ORACLE_HOME目錄的權限就可以了。

  步驟如下:

  1、以管理員的用戶登錄;

  2、找到ORACLE_HOME文件夾(本人的是D:oracleora92,不要對著ORACLE文件夾修改,因為ORACLE_HOME文件夾是oracle下面的那個ora92文件夾),點右鍵,選屬性--安全,在組或用戶欄中選“Authenticated Users”,在下面權限列表中把&l

copyright © 萬盛學電腦網 all rights reserved