如何進行訪問ADO.NET數據詳細說明
當我們對數據庫進行插入、刪除、更新和讀取數據時,我們經常需要寫很多相同或相似的代碼,這些代碼看起來很臃腫。這樣寫代碼不僅很浪費時間,而且程序看起來結構很不清晰,雜亂無章。System.Data.SqlClient里提供了很多數據庫操作的類。
訪問ADO.NET中的數據源是由托管提供程序所控制. 雖然托管提供程序與OLE DB有兩處重大的不同,但是二者是極為類似的.首先, 訪問ADO.NET托管提供程序在.NET環境下運行,通過 DataReader 和DataTable .NET類來檢索和展示數據.第二,它們的體系結構都比較簡單,是因為為了適應.NET而進行了優化.
此時,ADO.NET分成兩種不同類型的托管提供程序:一種用于SQL Server? 7.0 或更高版本,另一種適用于所有你可能已經安裝訪問ADO.NET的OLE DB 提供程序.雖然運用在兩種托管提供程序中的類是不同的,但它們卻都遵循相類似的命名方式.除開前綴之外,其它名稱都是相同的.前一種情況前綴為SQL, 后一種則是ADO。#t#
你需要利用SQL類來訪問SQL Server 表,因為SQL類會跳過由OLE DB 提供程序呈現的中間層, 而直接進入數據庫服務器內部API. ADO類是位于OLE DB 提供程序頂端的.NET接口,利用COM Interop 橋來進行工作。
因此我們可以使用已經提供的類,寫一個自己的類, 訪問ADO.NET在自己寫的類里面可以寫一些函數,這些函數是在程序中經常使用的代碼,函數可以帶不同的參數列表。以下就是我自己寫一個簡單的類。它的幾個函數我們可以在程序中大量可見的
- using System.Data.SqlClient;
- class DataLev
- {
- private SqlCommand myCmd;
- private SqlConnection sqlConn;
- private SqlDataAdapter myAdp;
- public SqlConnection getConn()
- {
- //返回數據庫連接字符串
- string constr = @"Data Source = localhost;
- Initial Catalog = CustomersManage;
- Integrated Security= true";
- sqlConn = new SqlConnection(constr);
- return sqlConn;
- }
- public void ExcuteCmd(string sqlCmd)
- {
- //執行一般的SQL語句(select,insert,delete,update)
- sqlConn = this.getConn();
- sqlConn.Open();
- myCmd = new SqlCommand(sqlCmd, sqlConn);
- myCmd.ExecuteNonQuery();//返回受影響的行
- myCmd.Dispose();
- sqlConn.Close();
- }