九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

第十一章 數(shù)據(jù)庫(kù)應(yīng)用程序開(kāi)發(fā)

上傳人:dfg****19 文檔編號(hào):247451760 上傳時(shí)間:2024-10-18 格式:PPT 頁(yè)數(shù):46 大?。?92KB
收藏 版權(quán)申訴 舉報(bào) 下載
第十一章 數(shù)據(jù)庫(kù)應(yīng)用程序開(kāi)發(fā)_第1頁(yè)
第1頁(yè) / 共46頁(yè)
第十一章 數(shù)據(jù)庫(kù)應(yīng)用程序開(kāi)發(fā)_第2頁(yè)
第2頁(yè) / 共46頁(yè)
第十一章 數(shù)據(jù)庫(kù)應(yīng)用程序開(kāi)發(fā)_第3頁(yè)
第3頁(yè) / 共46頁(yè)

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁(yè)未讀,繼續(xù)閱讀

資源描述:

《第十一章 數(shù)據(jù)庫(kù)應(yīng)用程序開(kāi)發(fā)》由會(huì)員分享,可在線閱讀,更多相關(guān)《第十一章 數(shù)據(jù)庫(kù)應(yīng)用程序開(kāi)發(fā)(46頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,第,頁(yè),Click to edit Master title style,VB.NET,程序設(shè)計(jì),數(shù)據(jù)庫(kù)應(yīng)用程序開(kāi)發(fā),第十一章 數(shù)據(jù)庫(kù)應(yīng)用 程序開(kāi)發(fā),VB.NET,程序設(shè)計(jì),主講教師:黃超男,email:huangchaonan2004,本章內(nèi)容:,11.1,數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí),11.2 ADO.NET,的使用,11.3,數(shù)據(jù)綁定,11.4,DataGrid,控件,11.5 Data Form Wizard,創(chuàng)建數(shù)據(jù)庫(kù),說(shuō)明 :本章內(nèi)

2、容較復(fù)雜、較抽象、較復(fù)雜,為了,方便大家掌握精髓,課件中我加了“ ”,的地方,是要求大家重點(diǎn)掌握的。,第,頁(yè),學(xué)習(xí)目標(biāo),數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí),使用,ADO.NET,及常用對(duì)象,數(shù)據(jù)綁定,DataGrid,的屬性及方法,使用數(shù)據(jù)窗體向?qū)?第,頁(yè),11.1,數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí),本節(jié)知識(shí)請(qǐng)大家回去復(fù)習(xí),SQL Server2000,在此不重復(fù)介紹。,第,頁(yè),11.2 ADO.NET,的使用,ADO.NET,是美國(guó)微軟公司最新推出的,由,ADO(Microsoft,ActiveX Data Objects),演變而來(lái)的,數(shù)據(jù)訪問(wèn)技術(shù),。,ADO.NET,提供了一組,.NET,類(lèi),,這些類(lèi)不僅有助于實(shí)現(xiàn)對(duì)各種數(shù)據(jù)

3、源進(jìn)行高效訪問(wèn),使用戶(hù)能夠?qū)?shù)據(jù)進(jìn)行復(fù)雜的操作和排序,而且形成了一個(gè)重要的框架,在這個(gè)框架中可以實(shí)現(xiàn)應(yīng)用程序之間的通信和,XMLWeb,服務(wù)。,ADO.NET,具有全新的對(duì)象模型,該模型,使用,XML,作為主要的數(shù)據(jù)傳輸格式,,同時(shí)它使得用戶(hù)對(duì)無(wú)關(guān)聯(lián)數(shù)據(jù)的操作變得更加簡(jiǎn)單,比起,ADO,來(lái)說(shuō),,ADO.NET,的主要,優(yōu)點(diǎn),在于:,編程更簡(jiǎn)單、性能更高、伸縮性更強(qiáng)、對(duì)單個(gè)數(shù)據(jù)源特性的依賴(lài)更小,以及與其它平臺(tái)的交互性更強(qiáng),第,頁(yè),一,.ADO.NET,的工作原理,ADO.NET,的兩個(gè)核心組件,數(shù)據(jù)提供程序(,Data Provider,),數(shù)據(jù)集(,DataSet,),第,頁(yè),1.NET,的數(shù)

4、據(jù)提供程序,設(shè)計(jì)目的,:為了實(shí)現(xiàn)對(duì)數(shù)據(jù)的快速訪問(wèn),.NET,框架提供了,4,個(gè)數(shù)據(jù)提供程序,SQL Server,數(shù)據(jù)提供程序,OLE DB,數(shù)據(jù)提供程序,ODBC,數(shù)據(jù)提供程序,Oracle,數(shù)據(jù)提供程序,包括,4,個(gè)對(duì)象:,Connection,、,Command,、,DataReader,和,DataAdapter,對(duì)象,第,頁(yè),Connection,對(duì)象,提供,與數(shù)據(jù)源,的,連接,Command,對(duì)象,在用,Connection,對(duì)象成功連接數(shù)據(jù)庫(kù)后,可以用,Command,對(duì)象,對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作,,如對(duì)數(shù)據(jù)進(jìn)行新增、刪除、修改等,DataReader,對(duì)象,從數(shù)據(jù)源中提供高性能的數(shù)據(jù)

5、流,DataAdapter,(數(shù)據(jù)適配器)對(duì)象,提供,連接,DataSet,對(duì)象,和數(shù)據(jù)源的橋梁,DataAdapter,使用,Command,對(duì)象在數(shù)據(jù)源中執(zhí)行,SQL,命令,以便,將數(shù)據(jù)加載到,DataSet,中,,并,使對(duì),DataSet,中數(shù)據(jù)的更改與數(shù)據(jù)源保持一致,第,頁(yè),打個(gè)比方:,第,頁(yè),2.,數(shù)據(jù)集(,DataSet,),設(shè)計(jì)目的,:為了,實(shí)現(xiàn)獨(dú)立于任何數(shù)據(jù)源的數(shù)據(jù)訪問(wèn),DataSet,不是一個(gè)單獨(dú)的表,而是,一組,包含了表結(jié)構(gòu)數(shù)據(jù)的,表,,同時(shí)它還包括表之間的所有,關(guān)系,DataSet,對(duì)象是一個(gè)存儲(chǔ)在內(nèi)存中的,離線數(shù)據(jù)庫(kù),,它并未與數(shù)據(jù)庫(kù)建立即時(shí)的連接,DataSet,對(duì)象

6、專(zhuān)門(mén)用來(lái)存儲(chǔ)從數(shù)據(jù)源中讀出的數(shù)據(jù),無(wú)論是哪種數(shù)據(jù)庫(kù),,在,DataSet,中存儲(chǔ)方式都是一致的,通常在進(jìn)行,數(shù)據(jù)操作,時(shí),,用戶(hù),將來(lái)自數(shù)據(jù)庫(kù)的數(shù)據(jù)填入,DataSet,中,,然后再對(duì)其進(jìn)行操作,當(dāng)用戶(hù)更改了數(shù)據(jù)并準(zhǔn)備將更改結(jié)果發(fā)送回?cái)?shù)據(jù)源時(shí),,DataSet,可以,一次性完成發(fā)送操作,由于,DataSet,的智能化,,只有數(shù)據(jù)中被更改的部分才會(huì)被發(fā)送回?cái)?shù)據(jù)庫(kù),第,頁(yè),二,.,使用,ADO.NET,開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用程序的步驟,第一步:,根據(jù)使用的數(shù)據(jù)源,確定使用的,.NET Framework,數(shù)據(jù)提供程序,。,第二步:,建立與數(shù)據(jù)源,的,連接,需使用,Connection,對(duì)象。,第三步:,執(zhí)

7、行,對(duì)數(shù)據(jù)源的,操作命令,,通常是,SQL,命令,需使用,Command,對(duì)象。,第四步:,使用數(shù)據(jù)集對(duì),獲得的,數(shù)據(jù),進(jìn)行,操作,,需使用,DataSet,、,DataReader,等對(duì)象。,第五步:,向用戶(hù),顯示數(shù)據(jù),,需使用數(shù)據(jù)控件。,說(shuō)明:,使用,ADO.NET,開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用程序,可以使用,編程的方法,也可以使用,VB.NET,提供的,數(shù)據(jù)控件,。,第,頁(yè),第一步:確定使用的,.NET Framework,數(shù)據(jù)提供程序。,如果使用的是,SQL Server,數(shù)據(jù)庫(kù),,則選擇,SQL Server,數(shù)據(jù)提供程序,。該數(shù)據(jù)提供程序類(lèi)位于命名空間,System.Data.SqlClient

8、,中,所以在程序的最前面,要寫(xiě)上,Imports System.Data.SqlClient,,表示引入該命名空間。,如果使用的是,Access,數(shù)據(jù)庫(kù),,則選擇,OLE DB,數(shù)據(jù)提供程序,。該數(shù)據(jù)提供程序類(lèi)位于,System.Data.OleDb,命名空間中,所以在程序的最前面,要寫(xiě)上,Imports System.Data.OleDb,,表示引入該命名空間。,第,頁(yè),第二步:建立與數(shù)據(jù)源的連接,需使用,Connection,對(duì)象。,1.,在訪問(wèn)數(shù)據(jù)庫(kù)之前首先需要連接到數(shù)據(jù)庫(kù),2.,使用,Connection,對(duì)象創(chuàng)建和管理連接,SqlConnection,對(duì)象,管理與,SQL Serve

9、r,數(shù)據(jù)庫(kù)的連接,OleDbConnection,對(duì)象,管理與可通過(guò),OLE DB,訪問(wèn)的任何數(shù)據(jù)存儲(chǔ)區(qū)的連接,OdbcConnection,對(duì)象,管理與通過(guò)使用連接字符串或,ODBC,數(shù)據(jù)源名稱(chēng)創(chuàng)建的數(shù)據(jù)源的連接,OracleConnection,對(duì)象,管理與,Oracle,數(shù)據(jù)庫(kù)的連接,第,頁(yè),3.,創(chuàng)建,Connection,對(duì)象常使用方法,1),使用代碼的方法,使用,New,關(guān)鍵字創(chuàng)建一個(gè),Connection,對(duì)象。,例如:,Dim,sqlCon,AS New,SqlConnection,(),或,Dim,oleDbCon,As New,OleDbConnection,(),2),使

10、用控件的方法,在窗體設(shè)計(jì)窗口中,雙擊,【,工具箱,】,窗格中的,SqlConnection,控件,圖標(biāo)或,OleDbConnection,控件,圖標(biāo),將控件添加到窗體下方,系統(tǒng)同時(shí)自動(dòng)創(chuàng)建對(duì)應(yīng)的,SqlConnection,類(lèi)或,OleDbConnection,類(lèi)對(duì)象。,說(shuō)明:,創(chuàng)建連接對(duì)象之后,還需要根據(jù)具體應(yīng)用,設(shè)置連接,字符串,,實(shí)現(xiàn)連接對(duì)象與數(shù)據(jù)源的連接。,第,頁(yè),4.Connection,對(duì)象常用屬性,1)ConnectionString,屬性:,用于讀取和設(shè)置用于,打開(kāi)數(shù)據(jù)庫(kù),的,命令字符串,。是,Connection,對(duì)象中最,重要,的屬性。只有在,數(shù)據(jù)庫(kù),處于,關(guān)閉,狀態(tài)的時(shí)候

11、才,可,以,被設(shè)置,。該屬性被設(shè)置的時(shí)候,只有使用了,Open,方法,后,屬性才會(huì)有效。,(1),使用,SQL Server,方式的連接字符串,dim,constr,as string,constr,=“,user id=,訪問(wèn)數(shù)據(jù)庫(kù)的用戶(hù)名,;password=,密碼,;initial catalog=,數(shù)據(jù)庫(kù),名,;data source=,數(shù)據(jù)源,”,sqlCon.ConnectiongString,=,constr,例如:,dim,constr,as string,constr,=“,user id=sa;password=;initial catalog=,學(xué)生數(shù)據(jù)庫(kù),;data s

12、ource=(local),”,sqlCon.ConnectiongString,=,constr,第,頁(yè),(2),使用,OLE EB,方式的連接字符串,dim,constr,as string,constr,=“,Provider=Microsoft.Jet.OLEDB.4.0;,Data Source=,數(shù)據(jù)源,”,oleDbcon.ConnectiongString,=,constr,例如:,dim,constr,as string,constr,=“,Provider=Microsoft.Jet.OLEDB.4.0;,Data Source=D:,student.mdb,”,oleDb

13、con.ConnectiongString,=,constr,第,頁(yè),2)ConnectionTimeout,屬性:,用于設(shè)置連接數(shù)據(jù)庫(kù)的,允許時(shí)間,。如果連接數(shù)據(jù)庫(kù)的時(shí)間超出該值,則會(huì)產(chǎn)生一個(gè)錯(cuò)誤。如果將該值設(shè)置為,0,,則表示沒(méi)有連接時(shí)間的設(shè)置。當(dāng)數(shù)據(jù)庫(kù)被打開(kāi)的時(shí)候,該屬性是只讀屬性。,3)Database,屬性:,用于設(shè)置,ADOConnection,對(duì)象的連接,數(shù)據(jù)庫(kù)名稱(chēng),。,4)DataSource,屬性:,表示,ADOConnection,對(duì)象所連接的,數(shù)據(jù)源,。該屬性在數(shù)據(jù)庫(kù)被打開(kāi)的時(shí)候是只讀屬性。要修改該屬性,必須在,ADOConnection,使用了,Close,方法時(shí)。,5

14、)State,屬性:,表示,ADOConnection,對(duì)象的,連接狀態(tài),,如果該值為,Connected,,表示目前已經(jīng)和,ConnectionString,屬性指定的數(shù)據(jù)庫(kù)建立連接,如為,Disconnected,,則表示沒(méi)有和任何一個(gè)數(shù)據(jù)庫(kù)建立連接。,6)UserID,屬性:,表示訪問(wèn)數(shù)據(jù)庫(kù)的,用戶(hù),ID,。,第,頁(yè),5.Connection,對(duì)象常用方法,在對(duì)數(shù)據(jù)庫(kù)實(shí)際操作之前,首先需要打開(kāi)連接,使用完后應(yīng)立即關(guān)閉,這是由,Open,和,Close,方法來(lái)完成的。,1)Open,方法:,該方法用于和數(shù)據(jù)庫(kù)建立一個(gè)連接。,其格式為:,Connection,對(duì)象,Open,(),如果一個(gè)數(shù)

15、據(jù)庫(kù)連接已經(jīng)打開(kāi),則會(huì)產(chǎn)生一個(gè)錯(cuò)誤。,例如:,sqlCon.Open,(),或,oleDbCon.Open,(),2)Close,方法:,該方法用于結(jié)束數(shù)據(jù)庫(kù)連接。,其格式為:,Connection,對(duì)象,Close,(),如果一個(gè)數(shù)據(jù)庫(kù)連接已經(jīng)被關(guān)閉,或者數(shù)據(jù)庫(kù)正在被操作,將會(huì)產(chǎn)生一個(gè)錯(cuò)誤。,例如:,sqlCon.Close,(),或,oleDbCon.Close,(),3)Dispose,方法:,該屬性用于銷(xiāo)毀,Connection,對(duì)象。,其格式為:,Connection,對(duì)象,.Dispose(,),例如:,sql,C,on.Dispose(),或,oleDbC,on.Dispose(

16、),第,頁(yè),6.,總結(jié):使用,Connection,對(duì)象的步驟,1),創(chuàng)建,Connection,對(duì)象。,2),把連接字符串賦值給,Connection,對(duì)象的,ConnectionString,屬性。,3),調(diào)用,Connection,對(duì)象的,Open,方法以打開(kāi)連接。,4),連接使用完畢后調(diào)用,Connection,對(duì)象的,Close,方法以關(guān)閉連接。,第,頁(yè),第三步:執(zhí)行對(duì)數(shù)據(jù)源的操作命令,通常是,SQL,命令,需使,用,Command,對(duì)象。,1.,創(chuàng)建,Command,對(duì)象常用方法,1),使用代碼的方法,使用,New,關(guān)鍵字創(chuàng)建一個(gè),Command,對(duì)象。,例如:,Dim,sqlCm

17、d,AS New,SqlCommand,(),或,Dim,oleDbCmd,As New,OleDbCommand,(),2),使用控件的方法,在窗體設(shè)計(jì)窗口中,雙擊,【,工具箱,】,窗格中的,SqlCommand,控件,圖標(biāo)或,OleDbCommand,控件,圖標(biāo),將控件添加到窗體下方,系統(tǒng)同時(shí)自動(dòng)創(chuàng)建對(duì)應(yīng)的,SqlCommand,類(lèi)或,OleDbCommand,類(lèi)對(duì)象。,說(shuō)明:,創(chuàng)建,Command,對(duì)象后,可以利用,Connection,屬性,設(shè)置,Command,對(duì)象的,連接屬性,。,第,頁(yè),2.Command,對(duì)象常用屬性,1)CommandText,屬性:,用來(lái)獲取或設(shè)置要對(duì)數(shù)據(jù)源

18、執(zhí)行的,SQL,語(yǔ)句或存儲(chǔ)過(guò)程名或表名。,例如:,sqlCmd.CommandText,=“select * from,userinfo,”,或,oleDbCmd.CommandText,=“select * from,userinfo,”,2)Connection,屬性:,用來(lái)獲取或設(shè)置此,Command,對(duì)象使用的,Connection,對(duì)象的名稱(chēng)。,例如:,sqlCmd,.,Connection,=,sqlCon,或,oleDbCmd,.,Connection,=,oleDbCon,第,頁(yè),3)CommandType,屬性:,用來(lái)獲取或設(shè)置,Command,對(duì)象要執(zhí)行的命令的類(lèi)型,即獲取

19、或設(shè)置一個(gè)指示如何解釋,CommandText,屬性的值。,該屬性是,CommandType,枚舉型的,取值有三種情況:,StoredProcedure,:,表示,CommandText,屬性中存放的是存儲(chǔ)過(guò)程的名字,;,TableDirect,:,表示,CommandText,屬性設(shè)置為要訪問(wèn)的一個(gè)或多個(gè)表的名稱(chēng),;,Text:,表示,CommandText,屬性中存放,SQL,文本命令。,4)CommandTimeout,屬性:,用來(lái)獲取或設(shè)置在終止對(duì)執(zhí)行命令的嘗試并生成錯(cuò)誤之前的等待時(shí)間,以秒為單位,默認(rèn)為,30,秒。,第,頁(yè),3.Command,對(duì)象常用方法,1)ExecuteNonQ

20、uery,方法:,該方法對(duì),Connection,對(duì)象建立的連接進(jìn)行不返回任何行的查詢(xún),如,Update(,更新,),、,Delete(,刪除,),和,Insert(,插入,),,該方法返回一個(gè)整型,(Integer),數(shù)據(jù),表示受查詢(xún)影響的行數(shù)。,例如:,Dim,sqlCmd,AS New,SqlCommand,(),sqlCmd.CommandText,=“insert into,userinfo,values(hcn,123,黃超男,管理員,)”,sqlCmd,.,Connection,=,sqlCon,sqlCmd,.,ExecuteNonQuery,(),sqlCon.Close,(

21、),第,頁(yè),2)ExecuteReader,方法:,該方法對(duì),Connection,對(duì)象建立的連接執(zhí)行一個(gè),CommandText,屬性中定義的命令,返回一個(gè)數(shù)據(jù)集,Reader,對(duì)象,該對(duì)象連接到數(shù)據(jù)庫(kù)的結(jié)果集上,允許行檢索。,3)ExecuteScalar,方法:,該方法對(duì),Connection,對(duì)象建立的連接執(zhí)行,CommandText,屬性中定義的命令,但只返回結(jié)果集中的第,1,行第,1,列的值。,第,頁(yè),第四步:使用數(shù)據(jù)集對(duì)獲得的數(shù)據(jù)進(jìn)行操作,需使用,DataSet,、,DataReader,等對(duì)象。,DataReader,對(duì)象,當(dāng)處理大量數(shù)據(jù)時(shí),大量?jī)?nèi)存的占用會(huì)導(dǎo)致性能上的問(wèn)題。為

22、解決這些問(wèn)題,,.NET,框架包括了,DataReader,對(duì)象,但是這個(gè)對(duì)象僅僅從數(shù)據(jù)庫(kù)返回一個(gè),只讀的,,,僅向前數(shù)據(jù)流,。且當(dāng)前內(nèi)存中每次,僅存在一條記錄,。,DataReader,接口支持各種數(shù)據(jù)源,可用于運(yùn)行完一條命令僅需要返回一個(gè)簡(jiǎn)單的只讀記錄集的情況。,使用,DataReader,可以直接從數(shù)據(jù)庫(kù)中讀取數(shù)據(jù),直接對(duì)數(shù)據(jù)庫(kù)執(zhí)行,SQL,語(yǔ)句,在此期間一直,保持,對(duì),數(shù)據(jù)庫(kù),的,連接,這并不是最好的方式。,第,頁(yè),1.DataSet,對(duì)象的特點(diǎn):,1),與數(shù)據(jù)庫(kù)或,SQL,無(wú)關(guān),,它只是簡(jiǎn)單地對(duì)數(shù)據(jù)表進(jìn)行操作、交換數(shù)據(jù)或者將數(shù)據(jù)綁定到用戶(hù)界面上。,2),DataSet,是,強(qiáng)類(lèi)型,的

23、,它把數(shù)據(jù)按照原來(lái)的類(lèi)型存儲(chǔ)。,3),DataSet,是一個(gè),離線的記錄集合,。它的方法如查詢(xún)、排序、篩選和更新等操作是,獨(dú)立于數(shù)據(jù)庫(kù),的。,4),在,DataSet,對(duì)象中可以,直接,對(duì)其關(guān)系、列、表和類(lèi)等對(duì)象,操作,,,不必重新連接數(shù)據(jù)庫(kù),。,5),一個(gè),DataSet,對(duì)象可以,包含多個(gè),表,每個(gè)表對(duì)象都包含行、列對(duì)象。,6),DataSet,對(duì)象通過(guò),RowError,對(duì)象可以逐行地,捕捉表中的錯(cuò)誤,,如有錯(cuò)會(huì)及時(shí)提示,因此與數(shù)據(jù)庫(kù)中的數(shù)據(jù)交換的效率及成功率都很高。,7),DataSet,對(duì)象可以,直接讀取,XML,數(shù)據(jù),。,DataSet,對(duì)象,第,頁(yè),2.DataSet,對(duì)象的組成

24、:,Dataset,對(duì)象是一個(gè)創(chuàng)建在內(nèi)存中的集合對(duì)象,它可以包含任意數(shù)量的數(shù)據(jù)表,以及所有表的約束、索引和關(guān)系,相當(dāng)于在內(nèi)存中一個(gè)小型的關(guān)系數(shù)據(jù)庫(kù)。一個(gè),DataSet,對(duì)象一般包括:,1)DataTable,對(duì)象:,代表創(chuàng)建在,DataSet,中的,表,2)DataRelation,對(duì)象:,代表著兩個(gè)表之間的,關(guān)系,。,3)DataColunm,對(duì)象:,代表與,列,有關(guān)的信息,包括列的名稱(chēng)、類(lèi)型和屬性。,4)DataRow,對(duì)象:,代表,DataTable,中的,記錄,。,第,頁(yè),3.DataSet,對(duì)象的屬性:,1)Tables,屬性,Tables,屬性獲取包含在,DataSet,中的,表

25、的集合,。,2)DataSetName,屬性,DataSetName,屬性獲取或設(shè)置,當(dāng)前,DataSet,的名稱(chēng),。,3)Prifix,屬性,Prifix,屬性獲取或設(shè)置一個(gè),XML,前綴,,該前綴是,DataSet,的命名空間的別名。在調(diào)用,ReadXml,方法之前設(shè)置,Prefix,屬性。,4)Relations,屬性,Relations,屬性用于,將表鏈接起來(lái),,允許從父表瀏覽到子表的關(guān)系的集合。,第,頁(yè),4.DataSet,對(duì)象的方法:,1)AcceptChanges,方法,將修改結(jié)果提交給,DataSet,中的表或關(guān)系。,2)GetChanges,方法,返回一個(gè)包含了上次的所有或部

26、分修改結(jié)果的,DataSet,對(duì)象。,3)HasChanges,方法,表示,DataSet,中的數(shù)據(jù)是否被修改過(guò)。,4)RejectChanges,方法,用來(lái)刪除內(nèi)容修改,使之恢復(fù)到原始狀態(tài)。,5)Clear,方法,釋放,DataSet,對(duì)象。,第,頁(yè),當(dāng)需要,從,DataSet,向數(shù)據(jù)庫(kù)傳出或傳入數(shù)據(jù),時(shí),需要,使用,DataAdapter,(數(shù)據(jù)適配器)對(duì)象,DataAdapter,對(duì)象是,DataSet,對(duì)象和數(shù)據(jù)源之間的,橋梁,,其主要,功能,是從數(shù)據(jù)源中檢索數(shù)據(jù)、填充,DataSet,對(duì)象中的表、把用戶(hù)對(duì),DataSet,對(duì)象的更改寫(xiě)入到數(shù)據(jù)源。,.NET Framework,中主要

27、使用,兩種,DataAdapter,對(duì)象,:,OleDbDataAdapter,和,SqlDataAdapter,。,OleDbDataAdapter,對(duì)象適用于,OLE DB,數(shù)據(jù)源,;,SqlDataAdapter,對(duì)象適用于,SQL Server,7.0,或更高版本。,DataAdapter,對(duì)象,第,頁(yè),1.,DataAdapter,對(duì)象的屬性:,1)InsertCommand,屬性,用于設(shè)置或取得對(duì)數(shù)據(jù)源添加數(shù)據(jù)的,SQL,命令。,2)DeleteCommand,屬性,用于設(shè)置或取得對(duì)數(shù)據(jù)源刪除數(shù)據(jù)的,SQL,命令。,3)SelectCommand,屬性,用于設(shè)置或取得對(duì)數(shù)據(jù)源查詢(xún)數(shù)

28、據(jù)的,SQL,命令。,4)UpdateCommand,屬性,用于設(shè)置或取得對(duì)數(shù)據(jù)源更新數(shù)據(jù)的,SQL,命令。,第,頁(yè),2.,DataAdapter,對(duì)象的方法:,1)Fill,方法,用來(lái)執(zhí)行,SelectCommand,,用數(shù)據(jù)源的數(shù)據(jù)填充,DataSet,對(duì)象。,2)FillSchema,方法,使用,SelectCommand,提取數(shù)據(jù)源中表的架構(gòu),并根據(jù)相應(yīng)的約束在,DataSet,對(duì)象中創(chuàng)建一個(gè)空表。,3)Update,方法,用來(lái)將,DataSet,對(duì)象中更改的內(nèi)容更新到初始的數(shù)據(jù)庫(kù)中。,第,頁(yè),例如:,Dim,sqlCmd,AS New,SqlCommand,(),Dim,myds,A

29、s New,DataSet,(),Dim,myDataAdapter,As New,sqlDataAdapter,( ),sqlCmd.CommandText,=“select * from,userinfo,”,sqlCmd,.,Connection,=,sqlCon,myDataAdapter,.SelectCommand =,sqlCmd,myDataAdapter,.Fill(m,yds, userinfo),第,頁(yè),第五步:向用戶(hù)顯示數(shù)據(jù),需使用數(shù)據(jù)控件。,此內(nèi)容將在后面的數(shù)據(jù)綁定小節(jié)中詳細(xì)介紹。,第,頁(yè),舉例:以系統(tǒng)登錄功能為例,講解使用編程的方法開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用程序的過(guò)程。,第,頁(yè)

30、,11.3,數(shù)據(jù)綁定,數(shù)據(jù)集不能直接顯示其中的數(shù)據(jù),必定通過(guò)能與其綁定的控件來(lái)實(shí)現(xiàn)。,數(shù)據(jù)綁定,是一個(gè)過(guò)程,,即在運(yùn)行時(shí)自動(dòng)為與數(shù)據(jù)集中的元素相關(guān)聯(lián)的控件設(shè)置屬性,。,Windows,窗體可以進(jìn)行兩種類(lèi)型的數(shù)據(jù)綁定:,簡(jiǎn)單數(shù)據(jù)綁定,和,復(fù)雜數(shù)據(jù)綁定,。,第,頁(yè),一,.,簡(jiǎn)單數(shù)據(jù)綁定,簡(jiǎn)單數(shù)據(jù)綁定就是將控件,綁定到單個(gè)數(shù)據(jù)字段,。每個(gè)控件僅顯示數(shù)據(jù)集中的一個(gè)字段值。如果在窗體上要顯示,n,項(xiàng)數(shù)據(jù),,就需要使用,n,個(gè)控件,。,最常用的簡(jiǎn)單數(shù)據(jù)綁定是將數(shù)據(jù)綁定到文本框和標(biāo)簽。,要建立數(shù)據(jù)綁定,需要在設(shè)計(jì)或運(yùn)行時(shí)對(duì)控件的,DataBinding,屬性,進(jìn)行設(shè)置。,舉例,:,第,頁(yè),二,.,復(fù)雜數(shù)據(jù)綁

31、定,復(fù)雜數(shù)據(jù)綁定允許,將多個(gè)數(shù)據(jù)元素綁定到一個(gè)控件,,同時(shí)顯示記錄源中的多行或多列。,支持復(fù)雜數(shù)據(jù)綁定的控件包括,數(shù)據(jù)網(wǎng)格控件,DataGrid,、,DataGridView,、,組合框控件,ComboBox,和,列表框,ListBox,等。,第,頁(yè),1.,DataGrid,控件,Windows,窗體,DataGrid,控件用來(lái)在一系列行和列中,顯示數(shù)據(jù),。,DataGrid,可以為數(shù)據(jù)集提供用戶(hù)界面、相關(guān)表之間的導(dǎo)航功能以及豐富的格式設(shè)置和編輯功能。,在運(yùn)行時(shí)使用,SetDataBinding,方法,,或在設(shè)計(jì)時(shí)使用,DataSource,和,DataMember,屬性,可將,DataGri

32、d,控件綁定到數(shù)據(jù)源。,可在,DataGrid,控件上直接對(duì)數(shù)據(jù)操作,,DataGrid,控件可顯示對(duì)數(shù)據(jù)所執(zhí)行操作的結(jié)果。但大多數(shù)數(shù)據(jù)特定的操作都是通過(guò)數(shù)據(jù)源而不是,DataGrid,來(lái)執(zhí)行。,第,頁(yè),1,)常用屬性,(1)AllowSorting,屬性,獲取或設(shè)置是否可以通過(guò)單擊列標(biāo)題對(duì)數(shù)據(jù)重排。,(2)Caption Text,屬性,獲取或設(shè)置網(wǎng)格窗口標(biāo)題的文本。,(3)ColumnHeaderVisible,屬性,獲得或設(shè)置一個(gè)指示表的列標(biāo)題是否可見(jiàn)。,(4)DataSource,屬性,用來(lái)指定,DataGrid,網(wǎng)格顯示數(shù)據(jù)的數(shù)據(jù)源。,(5)Item,屬性,獲取或設(shè)置指定單元格的值。

33、,第,頁(yè),2,)常用方法,(1)BeginEdit,方法,試圖將網(wǎng)格置于允許編輯的狀態(tài)。,(2)Collapse,方法,Collapse,方法折疊對(duì)于所有行存在的子行或折疊指定行的子行。,(3)Refresh,方法,Refresh,方法強(qiáng)制控件使其工作區(qū)無(wú)效,并立即刷新自己和任何子控件。,(4)Show,方法,Show,方法用于向用戶(hù)顯示控件。,第,頁(yè),舉例:,第,頁(yè),11.4,用,ADO.NET,控件開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用程序,優(yōu)點(diǎn),:,簡(jiǎn)單,缺點(diǎn),:,不靈活,步驟,:,1.,在窗體上創(chuàng)建,DataAdapter,對(duì)象,并配置相關(guān)屬性,;,2.,用,DataAdapter,對(duì)象填充,Dataset,對(duì)象,;,3.,進(jìn)行數(shù)據(jù)綁定,;,4.,如果在配置,DataAdapter,對(duì)象時(shí)的,selete,語(yǔ)句中含有主鍵字段,則可使用,DataAdapter,對(duì)象的,Update,方法進(jìn)行更新操作。,第,頁(yè),1.,了解,ADO.NET,。,2.,掌握,ADO.NET,使用方法。,3.,掌握,使用,ADO.NET,開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用程序的步驟,4.,掌握數(shù)據(jù)綁定和,DataGrid,控件。,總結(jié):,第,頁(yè),作業(yè):,1.,理解本章的內(nèi)容。,2.,完成教材,P286,習(xí)題,11,3.,實(shí)現(xiàn)自己所選系統(tǒng)的數(shù)據(jù)庫(kù)操作部分。,第,頁(yè),第,頁(yè),

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

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶(hù)上傳的文檔直接被用戶(hù)下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!