C#連接oracle數據庫操作


1、導入引用System.Data.OracleClient.dll文件
2、在頭部using System.Data.OracleClient;

//通過DataSet來讀取數據:

//創建和數據庫的連接
OracleConnection  oraCon=new  OracleConnection("user id=112;data source=wmatech;password=112");
//新建一個DataAdapter用於填充DataSet
OracleDataAdapter oraDap=new OracleDataAdapter("select * from actor",oraCon); 
//新建一個DataSet
DataSet ds=new DataSet();
//填充DataSet
oraDap.Fill(ds);
//新建一個DataTable
DataTable _table=ds.Tables[0];
//查看表中數據的列數
int count=_table.Rows.Count;
DataGrid1.DataSource=_table;
DataGrid1.DataBind();


//通過DataReader來讀取數據:

//創建和數據庫的連接
OracleConnection  oraCon=new  OracleConnection("user id=112;data source=wmatech;password=112");
//新建一個對數據庫操作的實例
OracleCommand     oraCmd=new OracleCommand("select * from actor",oraCon);
//打開數據庫連接
oraCon.Open();
//DataReader提供一種從數據庫讀取行的只進流的方式。
OracleDataReader  oraRD= oraCmd.ExecuteReader();
string szHtml="";
while (oraRD.Read())
{
szHtml+=oraRD[0].ToString()+" &nbsp;  "+oraRD[1].ToString()+"&nbsp; "+oraRD[2].ToString()+"<br>";
}
oraRD.Close();
//關閉數據庫連接
oraCon.Close();
Response.Write(szHtml);


//通過Command操作數據庫

//創建和數據庫的連接
OracleConnection  oraCon=new  OracleConnection("user id=112;data source=wmatech;password=112");
//新建一個對數據庫操作的實例
OracleCommand     oraCmd=new OracleCommand("update actor set name='123453' where id='admin'",oraCon);
oraCon.Open();
//ExecuteNonQuery對連接執行Transact-SQL語句並返回受影響的行數。
int effnum=oraCmd.ExecuteNonQuery();
Response.Write(effnum.ToString());
oraCon.Close();


//關於Transaction函數的使用

//創建和數據庫的連接
OracleConnection oraCon=new OracleConnection("user id=112;data source=wmdb;password=112");
OracleCommand    oraCmd=new OracleCommand();
//打開連接
oraCon.Open();
//新建一個事務對象的實例
OracleTransaction oraTact=oraCon.BeginTransaction();
oraCmd.Connection=oraCon;
//綁定事務對象到命令
oraCmd.Transaction=oraTact;
try
{
//將一個表的滿足某條件的行的指定的列插入到另一個表
oraCmd.CommandText="insert into yz_tranetp_probpow(oid,parentid,shiptype,amount,ton,weight,custnum,cubmeter,standbox,shipchara,busrange) select oid,parentid,shiptype,amount,ton,weight,custnum,cubmeter,standbox,shipchara,busrange from yz_tranetp_probpow_app where seqappid='"+appid+"' and needupdated=1";
oraCmd.ExecuteNonQuery();
oraCmd.CommandText="update yz_tranetp_probpow_app set needupdated=0 where seqappid='"+appid+"'";
oraCmd.ExecuteNonQuery();
//沒有錯誤,執行提交命令
oraTact.Commit();
}
catch(Exception ex)
{
//出現錯誤,執行回滾命令
oraTact.Rollback();
//彈出窗口顯示錯誤
Response.Write("<script>alert('"+ex.Message+"')</script>");
}
finally
{
//關閉連接
oraCon.Close();
} 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM