ADO.NET包括多個對象模型,有Connection/Command/DataReader/DataAdapter/DataSet/DataTable/DataView等。
命名空間System.Data.SqlClient 用於SQL SERVER數據庫
命名空間System.Data.Odbc
命名空間System.Data.OracleClient 用於Oracle數據庫
Connection對象
用於連接到數據庫和管理對數據庫的事務。
連接的串一般是:
connectionString="Data Source=; Initial Catalog=; Integrated Security=false; User ID=; password=" 常用方法: open(); close(); dispose();//釋放由Connection使用的所有資源。 Command對象 用來對數據源執行CRUD等操作,也可以是存儲過程。 常用方法: executeNonQuery();執行非select的命令,返回所影響的行數 executeScalar();執行select,返回第一行第一列的值。count/sum等集函數 executeReader();執行select,返回dataReader對象。 DataReader對象使用時始終用sqlconnection在線操作數據庫,每次在內存中加載一條數據,開銷很小
常用方法:
read();
NextResult();
close();不使用時關閉它
DataAdapter對象在DataSet和實際數據源之間的橋梁,專門為DataSet所服務。
兩種工作步驟:
1:通過Command對象執行sql語句從數據源中檢索數據,將檢索的數據填充到DataSet表中
2:把用戶對dataset對象做出的更改填寫到數據源中
常用方法:
fill();//從數據源中提取數據以填充數據集
update();更新數據源
常用屬性:
SelectCommand();
InsertCommand();
UpdateCommand();
DeletCommand();
DataSet對象
創建在內存中的集合對象,使用必須設置主鍵
DataTable對象用於表示DataSet中的表
DataView對象
用於排序/篩選/搜索/編輯和導航
第一種: String connectionString=""; SqlConnection con = new SqlConnection(connectionString); con.open(); SqlCommand cmd = new SqlCommand("select/等CRUD語句....";con); SqlDataReader reader = cmd.ExecuteReader(); while(reader.Reader()){ Response.Write(reader["列名"]); ..... } reader.close(); con.close(); 展示可以借用GirdView實現: GirdView.DataSource=reader; GirdView.DataBind(); 第二種: String connectionString=""; SqlConnection con = new SqlConnection(connectionString); con.open(); SqlDataAdapter da = new SqlDataAdapter("CRUD語句",con); DataSet ds = new DataSet(); da.Fill(ds); 或 String connectionString=""; SqlConnection con = new SqlConnection(connectionString); con.open(); SqlCommand cmd = new SqlCommand("select/等CRUD語句....";con); SqlDataAdapter da = new SqlDataAdapter(cmd); DataSet ds = new DataSet(); da.Fill(ds); 或 String connectionString=""; SqlConnection con = new SqlConnection(connectionString); con.open(); SqlDataAdapter da = new SqlDataAdapter(); da.SelectCommand = new SqlCommand("select/等CRUD語句....";con);