第二章 數(shù)據(jù)庫連接的建立_第1頁
第二章 數(shù)據(jù)庫連接的建立_第2頁
第二章 數(shù)據(jù)庫連接的建立_第3頁
第二章 數(shù)據(jù)庫連接的建立_第4頁
第二章 數(shù)據(jù)庫連接的建立_第5頁
已閱讀5頁,還剩12頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第2章數(shù)據(jù)庫連接的建立2.1

Connection對象概述2.2

代碼方式(設(shè)計方式或編程方式)使用Connection對象2.3可視化方式(設(shè)置方式)使用Connection對象2.4連接字符串的保存和加密2.5連接異常的處理2.1Connection對象概述用于定位服務(wù)器及數(shù)據(jù)庫;表示與數(shù)據(jù)源的物理連接;Connection對象起到渠道的作用。其他對象如DataAdapter和Command對象通過它與數(shù)據(jù)庫通信。常用方法BeginTransaction()、close()、open()。其余參見課本P52、Connection對象的方法1、Connection對象(連接組件)3、Connection對象的屬性常用屬性ConnectionString、State。其余參見課本P52.2代碼方式(設(shè)計方式或編程方式)使用Connection對象構(gòu)造函數(shù):SqlConnection()SqlConnection(StringConnectionString)1、代碼創(chuàng)建Connection對象的語法格式代碼示例2.2代碼方式(設(shè)計方式或編程方式)使用Connection對象連接字符串以鍵值對的形式出現(xiàn),鍵值對之間以分號分隔。常用鍵:DataSourceInitialCatalogIntegratedSecurityUserIDPwd(其它參見p6——p9)2.2.1Connection對象使用的連接字符串的構(gòu)建1、構(gòu)建連接字符串2.2代碼方式(設(shè)計方式或編程方式)使用Connection對象2、使用ConnectionStringBuilder對象構(gòu)建連接字符串使用ConnectionStringBuilder對象的好處:ConnectionStringBuilder對象通過屬性的形式提供Connection對象所要使用的鍵,不必記連接字符串的鍵名;用過多行代碼ConnectionStringBuilder對象屬性值,可以在某個鍵的值指定錯誤時拋出異常,這樣有利于檢查連接的錯誤。代碼示例(1).使用數(shù)據(jù)連接對話框添加數(shù)據(jù)連接2.3.1.使用服務(wù)器資源管理器創(chuàng)建數(shù)據(jù)庫連接的方式2.3可視化方式(設(shè)置方式)使用Connection對象(2).通過從服務(wù)器資源管理器中拖放一個表到Web窗體中新建數(shù)據(jù)庫連接(1)從工具箱選擇SqlConnection控件對象,添加到頁面(2)選擇SqlConnection控件對象右上角的智能菜單,配置新連接2.3.2使用Connection控件對象創(chuàng)建數(shù)據(jù)庫連接的方式2.3可視化方式(設(shè)置方式)使用Connection對象(1)新建記事本文件,并修改擴展名為.udl(2)雙擊.udl文件,配置新連接(3)使用記事本打開.udl文件,可以獲得連接字符串。注意:使用.udl文件配置的字符串,適用于System.Data.OleDB命名控件的提供程序。原因:從.udl文件名“統(tǒng)一數(shù)據(jù)庫連接配置文件”就可以知道,“統(tǒng)一”只能是通用的提供程序OleDB控件中的控件。從另外一個角度說明了,使用System.Data.OleDB命名空間的提供程序控件必須指定提供程序名Provider;使用System.Data.SqlClient命名空間的提供程序控件不必指定提供程序名Provider。2.3.3使用udl文件創(chuàng)建數(shù)據(jù)庫連接的方式2.3可視化方式(設(shè)置方式)使用Connection對象代碼示例2.4連接字符串的保存和加密頁面文件是客戶端可以訪問的文件,如果將連接字符串保存在頁面,容易暴露服務(wù)器及數(shù)據(jù)庫位置等敏感信息。將連接字符串保存在每個頁面文件中,不利于維護。2.4.1連接字符串的保存1、連接字符串不適宜保存在每一個頁面文件的代碼段中:2、連接字符串應(yīng)該保存在WebConfig文件中:Web.Config文件是客戶端不可以訪問的文件,不容易暴露服務(wù)器及數(shù)據(jù)庫位置等敏感信息。Web.Config文件中的配置能夠被加密。(具體參見后面)將連接字符串保存在Web.Config文件中,利于維護。 由于,對于一個應(yīng)用程序,根目錄下只有一個Web.config文件,當(dāng)Web.config文件中的配置改變,將對整個項目起作用。2.4連接字符串的保存和加密StringconStr=ConfigurationManager.ConnectionStrings[“連接名”].toString();2.4.2讀取保存在Web.Config中的連接字符串使用System.Configuration命名空間中的ConfigurationManager對象,注意編程時應(yīng)引入該命名空間。代碼示例,參見:p14注意:“連接名”是數(shù)組ConnectionStrings的下標(biāo),可以從web.config文件的連接配置中得到,這邊采用的是字符串為下標(biāo)的訪問方式,不建議使用數(shù)字下標(biāo)。2.4連接字符串的保存和加密P19圖連接字符串的加密注意:“連接名”是數(shù)組ConnectionStrings的下標(biāo),在加密后不易獲得。所以,對web.config文件的加密,一般是在整個項目開發(fā)結(jié)束后。2.5連接異常的處理1.SqlException類及SqlError對象(1)SqlException類對象包含了SQLServer返回連接出錯時拋出的的警告或錯誤信息(2)SqlException類對象在創(chuàng)建時至少包含一個SqlError對象實例,SqlError對象實例存有錯誤或警告的具體信息(3)處理的格式為:SqlErrorCollection

SqlError對象實例名稱=SqlException類對象實例.Errors(4)SqlError對象的屬性Class從SqlServer返回的錯誤嚴重等級LinwNumber從包含錯誤的Transact-SQL批命令或存儲過程中獲取行Message錯誤的描述信息Number標(biāo)識錯誤類型的號碼2.5連接異常的處理(5)SqlError對象的number屬性錯誤號描述170或156錯誤的Sql語法207select無效的列名208select無效的表名17無效服務(wù)器名4060無效數(shù)據(jù)庫名18452無效的用戶名18456無效密碼2.5連接異常的處理2.ADO.NET在連接時的錯誤 ADO.NET在連接時的錯誤有兩種:(1).連接打開失敗非法的連接字符串服務(wù)器或數(shù)據(jù)庫不存在用戶登錄失敗(2)DataAdapter對象創(chuàng)建DataSet

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論