天天看點

使用ADO.NET連接配接資料庫(一)

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();