ADO.NET連接SQL Server數(shù)據(jù)庫(kù)
在.NET應(yīng)用程序中,創(chuàng)建數(shù)據(jù)連接分為三步:
一、定義連接字符串
不同的數(shù)據(jù)庫(kù)連接字符串的格式不同,一般都包括要連接的數(shù)據(jù)庫(kù)提供都名稱、登陸信息以及要使用的數(shù)據(jù)庫(kù)名稱。
注意:在定義連接字符串之前,一定要引入相應(yīng)的命名空間。
所有的連接都要用到連接字符串ConnectionString,該字符串是使用分號(hào)隔開(kāi)的多項(xiàng)信息,其內(nèi)容隨著數(shù)據(jù)庫(kù)類型和訪問(wèn)內(nèi)容的變化而變化。不同的數(shù)據(jù)庫(kù)有著不同內(nèi)容的連接字符串,常用數(shù)據(jù)庫(kù)SQL Server數(shù)據(jù)庫(kù)連接字符串:

SQL Server是目前與.NET開(kāi)發(fā)程序配合使用最廣的數(shù)據(jù)庫(kù),它扮演著很重要的角色!在.NET Framework中,稱處理數(shù)據(jù)源(庫(kù))的應(yīng)用程序?yàn)橥泄芴峁┏绦?,并且專門為SQL Server數(shù)據(jù)庫(kù)提供了一個(gè)托管提供程序,即SQL Server托管提供程序,它用來(lái)連接和處理SQL Server數(shù)據(jù)庫(kù)。連接SQL Server數(shù)據(jù)庫(kù)的連接字符串是以“鍵/值”對(duì)的形式的語(yǔ)句組合而成的。其中常用的屬性及其說(shuō)明如下:
1、 Data Source:數(shù)據(jù)源。計(jì)算機(jī)名稱或者IP地址。
2、Server:服務(wù)器。數(shù)據(jù)庫(kù)所在計(jì)算機(jī)的名稱。
3、 Database:數(shù)據(jù)庫(kù)名稱。
4、 Initail Catalog:數(shù)據(jù)庫(kù)的名稱。
5、 User ID:用于連接數(shù)據(jù)庫(kù)的用戶名稱。
6、 Password:用于連接數(shù)據(jù)庫(kù)的用戶密碼。
7、 Pooling:標(biāo)志是否使用數(shù)據(jù)庫(kù)連接池。
8、 Intergrated Security:系統(tǒng)集成安全驗(yàn)證。標(biāo)志登錄數(shù)據(jù)庫(kù)時(shí)是否使用系統(tǒng)集成驗(yàn)證。
9、 Connection Timeout:連接超時(shí)的時(shí)間。系統(tǒng)再次嘗試連接數(shù)據(jù)庫(kù)時(shí)所經(jīng)歷的時(shí)間,單位為秒,默認(rèn)值為15秒。
下面是在ASP.NET中常用的與SQL Server數(shù)據(jù)庫(kù)連接的字符串示例:
- string strConnection = "Server=(Local);
- Integrated Security=SSPI;
- Pwd=password;
- uid=user id;
- Database=mydatabase";
Integrated Security=SSPI 這個(gè)表示以當(dāng)前WINDOWS系統(tǒng)用戶身去登錄SQL SERVER服務(wù)器,如果SQL SERVER服務(wù)器不支持這種方式登錄時(shí),就會(huì)出錯(cuò)。
一般語(yǔ)法:
- "Date Source=服務(wù)器名;
- Initial Catalog=數(shù)據(jù)庫(kù)名;
- uid=用戶名;
- pwd=密碼";
例如:要連接本機(jī)數(shù)據(jù)庫(kù)“book”中,連接字符串為:
- string strConnection="Date Source=.;
- Initial Catalog=book;
- uid=sa;
- pwd=1234";
注意:如果服務(wù)器是本機(jī),可以使用“.”代替計(jì)算機(jī)名或IP地址。用戶名寫作“uid”,也可以寫作“user id”,如果密碼為空,可以省略“pwd”,也可以寫作“password”。這里必須要注意的是,“user id”中間有空格,如果寫為“userid”會(huì)報(bào)錯(cuò)“不支持關(guān)鍵字userid”,連接字符串通常不區(qū)分大小寫。
使用下面的書寫方式也可以實(shí)現(xiàn)同樣功能:
- "Server=服務(wù)器名;
- DataBase=數(shù)據(jù)庫(kù)名;
- user id=用戶名;
- pwd=密碼";
上面的連接字符串為:
- string strConnection="Server=(local).;
- DataBase=book;
- uid=sa;
- pwd=1234";
如果采用VS2008內(nèi)置數(shù)據(jù)庫(kù)Express版本SQL Server2005,連接數(shù)據(jù)庫(kù)的字符串通常寫為:
- string strConnection="Server=(local)\sqlexpress;
- Initial Catalog=book;
- uid=sa;
- pwd=1234";
其中(local)\sqlexpress是正在訪問(wèn)的SQL Server名稱,格式是“計(jì)算機(jī)名\實(shí)例名”,(local)表示運(yùn)行當(dāng)前計(jì)算機(jī)上的服務(wù)器實(shí)例,也可以用計(jì)算機(jī)名代替。
sqlexpress是SQL Server實(shí)例名,在一臺(tái)計(jì)算機(jī)上安裝多個(gè)SQL Server版本時(shí)會(huì)有多個(gè)不同實(shí)例,sqlexpress是安裝Express默認(rèn)實(shí)例名。
二、創(chuàng)建Connection對(duì)象
語(yǔ)法如下:
- SqlConnection Connection對(duì)象名=new SqlConnection(連接字符串);
示例代碼:
- SqlConnection objConnection=new SqlConnection(strConnection);
三、打開(kāi)與數(shù)據(jù)庫(kù)的連接
調(diào)用SqlConnection對(duì)象的Open()方法即可實(shí)現(xiàn)。
- objConnection.Open();
【編輯推薦】


















