揭秘ADO.NET OracleClient命名空間對象
大家都知道隨著技術的發(fā)展,訪問數(shù)據庫的方式也很多,不知道大家喜歡用什么方法去訪問數(shù)據庫呢?先給大家介紹常見的幾種:開放數(shù)據庫互聯(lián)(ODBC)、數(shù)據訪問對象(DAO)、遠程數(shù)據對象(RDO)、ActiveX數(shù)據對象(ADO)。我們今天主要要學習ADO.NET OracleClient命名空間中的幾個常用對象,用這作為對ADO.NET認識學習的開始。
#T#ADO與ADO.NET既有相似也有區(qū)別,他們都能夠編寫對數(shù)據庫服務器中的數(shù)據進行訪問和操作的應用程序,并且易于使用、高速度、低內存支出和占用磁盤空間較少,支持用于建立基于客戶端/服務器和Web的應用程序的主要功能。但是ADO使用OLEDB接口并基于微軟的COM技術,而ADO.NET擁有自己的ADO.NET接口并且基于微軟的.NET體系架構。眾所周知.NET體系不同于COM體系,ADO.NET接口也就完全不同于ADO和OLEDB接口,這也就是說ADO.NET為.NET構架提供了優(yōu)化的數(shù)據訪問模型,和基于COM的ADO是完全兩樣的數(shù)據訪問方式。
ADO.NET是一組訪問數(shù)據源的面向對象的類庫。簡單的理解,數(shù)據源就是數(shù)據庫,它同時也能夠是文本文件、Excel表格或者XML文件。ADO.NET里包括了許多專門用于和數(shù)據打交道的對象。下面介紹了一些最常用的對象。這些對象是學習ADO.NET必須了解的。掌握它們后我們將了解使用ADO.NET和數(shù)據打交道需要考慮哪些事情。
一、ADO.NET OracleClient之OracleConnection對象
要訪問一個數(shù)據源,你必須先建立一個到它的連接。這個連接里描述了數(shù)據庫服務器類型、數(shù)據庫名字、用戶名、密碼,和連接數(shù)據庫所需要的其它參數(shù)。command對象通過使用connection對象來知道是在哪個數(shù)據庫上面執(zhí)行ORACLE命令。
- OracleConnectionoracleConn=newOracleConnection();
- oracleConn.ConnectionString="UserId=scott;Password=tiger;
- DataSource=oracleSN;";
- oracleConn.Open();
二、ADO.NET OracleClient之OracleCommand對象
連接數(shù)據庫后就可以開始想要執(zhí)行的數(shù)據庫操作,這個是通過command對象完成,command對象一般被用來發(fā)送ORACLE語句給數(shù)據庫。command對象通過connection對象得知道應該與哪個數(shù)據庫進行連接。我們既可以用command對象來直接執(zhí)行ORACLE命令,也可以將一個command對象的引用傳遞給OracleDataAdapter,OracleDataAdapter能包含一系列的command對象,可以處理大量數(shù)據。
- publicvoidReadMyData(stringconnectionString)
- {
- stringqueryString="SELECTEmpNo,DeptNoFROMScott.Emp";
- OracleConnectionconnection=newOracleConnection(connectionString)
- {
- OracleCommandcommand=newOracleCommand(queryString,connection);
- connection.Open();
- OracleDataReaderreader=command.ExecuteReader();
- try
- {
- while(reader.Read())
- {
- Console.WriteLine(reader.GetInt32(0)+","+reader.GetInt32(1));
- }
- }
- finally
- {
- reader.Close();
- }
- }
- }