ADO.NET 核心對象簡介


ADO.NET

 

ADO.NET是.NET中一組用於和數據源進行交互的面向對象類庫,提供了數據訪問的高層接口。

ADO.NET類庫在System.Data命名空間內,根據我們訪問的不同數據庫選擇命名空間,System.Data.SqlClient。

ADO.NET類最重要的優點是支持數據庫以斷開連接的方式工作。

ADO.NET主要通過兩個核心組件來完成對數據庫的操作,分別是DataSet和.NET數據庫提供程序。數據集,在命令空間:System.Data下。

前者是ADO.NET斷開式結構的核心組件,后者是專門為直接訪問數據庫,對其進行快速的只進,只讀訪問數據等數據處理而設計的組件。

ADO.NET常用對象:


Connection  連接數據庫的通道

Command  命令執行對象

DataReader  數據讀取器(只讀只進)

DataAdapter  數據適配器

DateSet  數據在內存中的表現形式,臨時數據庫,斷開式操作。

 

SqlConnection conn = new SqlConnection();  //創建Connection連接數據庫對象

conn.ConnectionString = "data sourse=.;initalial catalog=MySchool;integrated security=true;"  //連接字符串

 

SqlCommand cmd = new SqlCommand();  //創建Command命令執行對象

cmd.CommandText = "SELECT * FROM dbo.Student";  //SQL語句

cmd.Connection = conn;  //綁定連接

cmd.CommandType = CommandType.Text;  //它告訴.net接下來執行的是一個文本(text)、存儲過程(StoredProcedure)還是表名稱(TableDirect).

 

//傳參sql語句

cmd.CommandText = "SELECT * FROM dbo.Student where UesrID=@ID";  //SQL語句

SqlParameter  para=new SqlParameter("@ID",SqlDbType.int,4);  //生成一個名為@Id的參數,必須以@開頭表示是添加的參數,並設置其類型長度,類型,長度。與數據庫中對應字段相同

para.Value=Id;  //給參數賦值

cmd.Parameters.Add(para);  //必須把參數變量添加到命令對象中去。

 

 

conn.Open();  //打開連接

 

int i = Covert.ToInt32(cmd.Executescalar())  //返回結果集中第一行的第一列,一般用於返回單個結果(一行一列)的時候使用,值有可能返回null。

 

int i = Covert.ToInt32(cmd.ExecuteNonQuery())  //返回受影響的行數,一般用於 增刪改 語句。執行其他語句默認返回-1。

 

SqlDataReader reader= cmd.ExecuteReader();  //執行命令,返回DataReader對象

if(reader.HasRows)  //判斷是否有結果返回

while (reader.Read())  //循環讀取
{

//do something

}

conn.Close();  //關閉連接

reader.Close();  //關閉reader

 

SqlDataAdapter sda = new SqlDataAdapter(sql語句,conn)  //創建對象

DataSet ds = new Dataset()

sda.fill(ds."表名")

 

 

SqlParameter  para=new SqlParameter("@Id",SqlDbType.int,4);  //生成一個名字為@Id的參數,必須以@開頭表示是添加的參數,並設置其類型長度,類型長度與數據庫中對應字段相同

para.Value=Id;  //給參數賦值

cmd.Parameters.Add(para);  //把參數變量添加到命令對象中去。

 

一次添加多個參數

SqlParameter[]  para=new SqlParameter[] {new SqlParameter("@Id",SqlDbType.int,4){value = xxx},new SqlParameter("@Id",SqlDbType.int,4){value = xxx}};

cmd.Parameters.AddRange(para);


免責聲明!

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



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