ADO.NET是.NET Framework中的一系列類庫,它能夠讓開發人員更加友善的在應用程式中使用和操作資料。在ADO.NET中,大量的複雜的資料操作的代碼被封裝起來,是以當開發人員在ASP.NET應用程式開發中,隻需要編寫少量的代碼即可處理大量的操作。ADO.NET和C#.NET、VB.NET不同的是,ADO.NET并不是一種語言,而是對象的集合。
ADO.NET是由微軟編寫代碼,提供了在.NET開發中資料庫所需要的操作的類。在.NET應用程式開發中,C#和VB.NET都可以使用ADO.NET。
ADO.NET可以被看作是一個介于資料源和資料使用者之間的轉換器。ADO.NET接受使用者語言中的指令,如連接配接資料庫、傳回資料集之類,然後将這些指令轉換成在資料源中可以正确執行的語句。在傳統的應用程式開發中,應用程式可以連接配接ODBC來通路資料庫,雖然微軟提供的類庫非常的豐富,但是開發過程卻并不簡單。ADO.NET在另一方面,可以說簡化了這個過程。使用者無需了解資料庫産品的API或接口,也可以使用ADO.NET對資料進行了操作。ADO.NET中常用的對象有:
SqlConnection:該對象表示與資料庫伺服器進行連接配接。
SqlCommand:該對象表示要執行的SQL指令。
SqlParameter;該對象代表了一個将被指令中标記代替的值。
SqlDataAdapter:該對象表示填充指令中的DataSet對象的能力。
DataSet:表示指令的結果,可以是資料集,并且可以同BulletedList進行綁定。
通過使用上述的對象,可以輕松的連接配接資料庫并對資料庫中的資料進行操作。對開發人員而言,可以使用ADO.NET對資料庫進行操作,在ASP.NET中,還提供了高效的控件,這些控件同樣使用了ADO.NET讓開發人員能夠連接配接、綁定資料集并進行相應的資料操作。
ADO.NET通過ADOConnection連接配接到資料庫。和ADO的Connection對象相似的是,ADOConnection同樣包括Open和Close方法。Open表示打開資料庫連接配接,Close表示關閉資料庫連接配接。在每次打開資料庫連接配接後,都需要關閉資料庫連接配接。
建立連接配接
在SQL資料庫的連接配接中,需要使用.NET提供的SqlConnection對象來對資料庫進行連接配接。在連接配接資料庫前,需要為連接配接設定連接配接串,連接配接串就相當于告訴應用程式怎樣找到資料庫去進行連接配接,然後程式才能正确的與SQL建立連接配接,使用Connection對象連接配接資料庫有兩種方式:
方法一:封閉式
server='伺服器位址';database='資料庫名稱';UID='資料庫使用者名';pwd='資料庫密碼';
示例;string sqla = @"server=.;database=yezi;UID=sa;pwd=123.com";//連接配接資料庫的字串
方法二:開放式
Data Source=伺服器名;Initial Catalog=資料庫名;User ID=使用者名;pwd=密碼
示例;string sqla = "Data soerce=.;Initial Catalog=yezi;User ID=sa;pwd=123.com";
注:目前公司大多數使用開放式上述代碼說明了資料庫連接配接字串的基本格式,如果需要連接配接到本地的mytable資料庫,則編寫相應的SQL連接配接字串進行資料庫的連接配接,示例代碼如下所示。
string strcon; //聲明連接配接字串
strcon = "server='(local)';database='mytable';uid='sa';pwd='sa';"; //設定連接配接字串
上述代碼聲明了一個資料庫連接配接字串,SqlConnection類将會通過此字串來進行資料庫的連接配接。其中,server是SQL伺服器的位址,如果相對于應用程式而言資料庫伺服器是本地伺服器,則隻需要配置為(loacal)即可,而如果是遠端伺服器,則需要填寫具體的ip。另外,uid是資料庫登入時的使用者名,pwd是資料庫登入時使用的密碼。在聲明了資料庫連接配接字串後,可以使用SqlConnection類進行連接配接,示例代碼如下所示。
strcon = "server='(local)';database='mytable';uid='sa';pwd='sa';"; //編寫連接配接字串
SqlConnection con = new SqlConnection(strcon); //建立SQL連接配接
try
{
con.Open(); //打開SQL連接配接
Label1.Text = "連接配接資料庫成功"; //提示成功資訊
}
catch
Label1.Text = "無法連接配接資料庫"; //提示失敗資訊
上述代碼連接配接了本地資料庫伺服器中的mytable資料庫,如果連接配接成功,則提示“連接配接資料庫成功”,出現異常時,則提示“無法連接配接資料庫”。
下面再使用開放式與資料庫yezi連接配接,代碼如下;
//連接配接資料庫的字串
string sqla = "Data soerce=.;Initial Catalog=yezi;User ID=sa;pwd=123.com";
//建立SqlConnection對象。設定SqlConnection對象連接配接資料庫的字元串
SqlConnection conn = new SqlConnection(sqla);
//打開資料庫
conn.Open();
//關閉資料庫
注意:在使用SqlConnection類時,需要使用命名空間using System.Data.SqlClient;而連接配接Access資料庫時,需要使用命名空間using System.Data.OleDb。
案例:連接配接yezi 資料庫 步驟:1. 建立一個檔案夾company,并在company下建立一個網站。
2. 打開自動生成的檔案web.config檔案,找到配置節<configuration>下的子配置節</connectionStrings>,使用name屬性和connectionStrings屬性配置資料庫連接配接資訊,将</connectionStrings>用下面的代碼代替;
<connectionStrings>
<add name ="siteConn" connectionString="Data Source=.;Initial Catalog=yezi;
User ID=sa;pwd=123.com"/>
</connectionStrings>
3. 打開Default.aspx.cs檔案,在檔案中使用命名空間using System.Configuration和using System.Data.SqlClient,代碼如下;
using System.Configuration;
using System.Data.SqlClient;
4.在頁面的Page_load()方法中用ConfigurationManager類擷取資料庫連接配接字元串,使用SqlConnection建立一個資料庫連接配接對象,并打開資料庫連接配接,然後再頁面中輸出一句話驗證資料庫是否連接配接成功,最後關閉資料庫連接配接,代碼如下;
protected void Page_Load(object sender, EventArgs e)
//使用ConfigurationManager類擷取連接配接資料庫的字串
string sqla = ConfigurationManager.ConnectionStrings["siteConn"].ConnectionString;
//用Response對象在頁面輸出一句話
Response.Write("資料庫連接配接成功");
conn.Close();