




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第2章數(shù)據(jù)庫(kù)連接的建立2.1
Connection對(duì)象概述2.2
代碼方式(設(shè)計(jì)方式或編程方式)使用Connection對(duì)象2.3可視化方式(設(shè)置方式)使用Connection對(duì)象2.4連接字符串的保存和加密2.5連接異常的處理2.1Connection對(duì)象概述用于定位服務(wù)器及數(shù)據(jù)庫(kù);表示與數(shù)據(jù)源的物理連接;Connection對(duì)象起到渠道的作用。其他對(duì)象如DataAdapter和Command對(duì)象通過(guò)它與數(shù)據(jù)庫(kù)通信。常用方法BeginTransaction()、close()、open()。其余參見(jiàn)課本P52、Connection對(duì)象的方法1、Connection對(duì)象(連接組件)3、Connection對(duì)象的屬性常用屬性ConnectionString、State。其余參見(jiàn)課本P52.2代碼方式(設(shè)計(jì)方式或編程方式)使用Connection對(duì)象構(gòu)造函數(shù):SqlConnection()SqlConnection(StringConnectionString)1、代碼創(chuàng)建Connection對(duì)象的語(yǔ)法格式代碼示例2.2代碼方式(設(shè)計(jì)方式或編程方式)使用Connection對(duì)象連接字符串以鍵值對(duì)的形式出現(xiàn),鍵值對(duì)之間以分號(hào)分隔。常用鍵:DataSourceInitialCatalogIntegratedSecurityUserIDPwd(其它參見(jiàn)p6——p9)2.2.1Connection對(duì)象使用的連接字符串的構(gòu)建1、構(gòu)建連接字符串2.2代碼方式(設(shè)計(jì)方式或編程方式)使用Connection對(duì)象2、使用ConnectionStringBuilder對(duì)象構(gòu)建連接字符串使用ConnectionStringBuilder對(duì)象的好處:ConnectionStringBuilder對(duì)象通過(guò)屬性的形式提供Connection對(duì)象所要使用的鍵,不必記連接字符串的鍵名;用過(guò)多行代碼ConnectionStringBuilder對(duì)象屬性值,可以在某個(gè)鍵的值指定錯(cuò)誤時(shí)拋出異常,這樣有利于檢查連接的錯(cuò)誤。代碼示例(1).使用數(shù)據(jù)連接對(duì)話框添加數(shù)據(jù)連接2.3.1.使用服務(wù)器資源管理器創(chuàng)建數(shù)據(jù)庫(kù)連接的方式2.3可視化方式(設(shè)置方式)使用Connection對(duì)象(2).通過(guò)從服務(wù)器資源管理器中拖放一個(gè)表到Web窗體中新建數(shù)據(jù)庫(kù)連接(1)從工具箱選擇SqlConnection控件對(duì)象,添加到頁(yè)面(2)選擇SqlConnection控件對(duì)象右上角的智能菜單,配置新連接2.3.2使用Connection控件對(duì)象創(chuàng)建數(shù)據(jù)庫(kù)連接的方式2.3可視化方式(設(shè)置方式)使用Connection對(duì)象(1)新建記事本文件,并修改擴(kuò)展名為.udl(2)雙擊.udl文件,配置新連接(3)使用記事本打開(kāi).udl文件,可以獲得連接字符串。注意:使用.udl文件配置的字符串,適用于System.Data.OleDB命名控件的提供程序。原因:從.udl文件名“統(tǒng)一數(shù)據(jù)庫(kù)連接配置文件”就可以知道,“統(tǒng)一”只能是通用的提供程序OleDB控件中的控件。從另外一個(gè)角度說(shuō)明了,使用System.Data.OleDB命名空間的提供程序控件必須指定提供程序名Provider;使用System.Data.SqlClient命名空間的提供程序控件不必指定提供程序名Provider。2.3.3使用udl文件創(chuàng)建數(shù)據(jù)庫(kù)連接的方式2.3可視化方式(設(shè)置方式)使用Connection對(duì)象代碼示例2.4連接字符串的保存和加密頁(yè)面文件是客戶端可以訪問(wèn)的文件,如果將連接字符串保存在頁(yè)面,容易暴露服務(wù)器及數(shù)據(jù)庫(kù)位置等敏感信息。將連接字符串保存在每個(gè)頁(yè)面文件中,不利于維護(hù)。2.4.1連接字符串的保存1、連接字符串不適宜保存在每一個(gè)頁(yè)面文件的代碼段中:2、連接字符串應(yīng)該保存在WebConfig文件中:Web.Config文件是客戶端不可以訪問(wèn)的文件,不容易暴露服務(wù)器及數(shù)據(jù)庫(kù)位置等敏感信息。Web.Config文件中的配置能夠被加密。(具體參見(jiàn)后面)將連接字符串保存在Web.Config文件中,利于維護(hù)。 由于,對(duì)于一個(gè)應(yīng)用程序,根目錄下只有一個(gè)Web.config文件,當(dāng)Web.config文件中的配置改變,將對(duì)整個(gè)項(xiàng)目起作用。2.4連接字符串的保存和加密StringconStr=ConfigurationManager.ConnectionStrings[“連接名”].toString();2.4.2讀取保存在Web.Config中的連接字符串使用System.Configuration命名空間中的ConfigurationManager對(duì)象,注意編程時(shí)應(yīng)引入該命名空間。代碼示例,參見(jiàn):p14注意:“連接名”是數(shù)組ConnectionStrings的下標(biāo),可以從web.config文件的連接配置中得到,這邊采用的是字符串為下標(biāo)的訪問(wèn)方式,不建議使用數(shù)字下標(biāo)。2.4連接字符串的保存和加密P19圖連接字符串的加密注意:“連接名”是數(shù)組ConnectionStrings的下標(biāo),在加密后不易獲得。所以,對(duì)web.config文件的加密,一般是在整個(gè)項(xiàng)目開(kāi)發(fā)結(jié)束后。2.5連接異常的處理1.SqlException類(lèi)及SqlError對(duì)象(1)SqlException類(lèi)對(duì)象包含了SQLServer返回連接出錯(cuò)時(shí)拋出的的警告或錯(cuò)誤信息(2)SqlException類(lèi)對(duì)象在創(chuàng)建時(shí)至少包含一個(gè)SqlError對(duì)象實(shí)例,SqlError對(duì)象實(shí)例存有錯(cuò)誤或警告的具體信息(3)處理的格式為:SqlErrorCollection
SqlError對(duì)象實(shí)例名稱(chēng)=SqlException類(lèi)對(duì)象實(shí)例.Errors(4)SqlError對(duì)象的屬性Class從SqlServer返回的錯(cuò)誤嚴(yán)重等級(jí)LinwNumber從包含錯(cuò)誤的Transact-SQL批命令或存儲(chǔ)過(guò)程中獲取行Message錯(cuò)誤的描述信息Number標(biāo)識(shí)錯(cuò)誤類(lèi)型的號(hào)碼2.5連接異常的處理(5)SqlError對(duì)象的number屬性錯(cuò)誤號(hào)描述170或156錯(cuò)誤的Sql語(yǔ)法207select無(wú)效的列名208select無(wú)效的表名17無(wú)效服務(wù)器名4060無(wú)效數(shù)據(jù)庫(kù)名18452無(wú)效的用戶名18456無(wú)效密碼2.5連接異常的處理2.ADO.NET在連接時(shí)的錯(cuò)誤 ADO.NET在連接時(shí)的錯(cuò)誤有兩種:(1).連接打開(kāi)失敗非法的連接字符串服務(wù)器或數(shù)據(jù)庫(kù)不存在用戶登錄失敗(2)DataAdapter對(duì)象創(chuàng)建DataSet
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年國(guó)際學(xué)歷與證書(shū)認(rèn)證考試題及答案
- 2025年基礎(chǔ)設(shè)施項(xiàng)目管理與評(píng)估測(cè)試試卷及答案
- 健康人性課課件
- 快樂(lè)睡眠整體方案課件
- 健康產(chǎn)業(yè)趨勢(shì)課件
- 春季易發(fā)疾病預(yù)防指南
- T/TMAC 009.F-2019科技服務(wù)機(jī)構(gòu)評(píng)價(jià)導(dǎo)則
- 新生兒窒息綜合防治策略
- 衛(wèi)生間插花課件
- 長(zhǎng)郡教育集團(tuán)2025年九年級(jí)《化學(xué)》上冊(cè)期中試題與參考答案
- 人教版二年級(jí)下冊(cè)口算題天天練1000道可打印帶答案
- 2022北京東城六年級(jí)畢業(yè)考英語(yǔ)試題含答案
- 部編版三年級(jí)語(yǔ)文下冊(cè)口語(yǔ)交際:勸告 課件
- 山東省煙臺(tái)市萊州市2023-2024學(xué)年八年級(jí)下學(xué)期期中數(shù)學(xué)試題
- 日本近現(xiàn)代文學(xué)概論
- 海水的淡化技術(shù)及應(yīng)用
- 叮咚智能鎖說(shuō)明書(shū)
- 嘉世咨詢(xún) -2024眼科診療行業(yè)簡(jiǎn)析報(bào)告
- 手機(jī)拍攝短視頻
- DB32T 4719-2024酒店服務(wù)與廚師職業(yè)技能等級(jí)認(rèn)定工作規(guī)范
- 2024年湖南省郴州湘能農(nóng)電服務(wù)有限公司招聘筆試參考題庫(kù)含答案解析
評(píng)論
0/150
提交評(píng)論