數(shù)據(jù)庫連接技術(shù)7節(jié).ppt
《數(shù)據(jù)庫連接技術(shù)7節(jié).ppt》由會員分享,可在線閱讀,更多相關(guān)《數(shù)據(jù)庫連接技術(shù)7節(jié).ppt(25頁珍藏版)》請在裝配圖網(wǎng)上搜索。
8.7連接數(shù)據(jù)庫技術(shù),8.7.1ODBC技術(shù)8.7.2ADO技術(shù)8.7.3VB連接SQLServer實例,8.7.1ODBC技術(shù),,ODBC(OpenDatabaseConnectivity,開放數(shù)據(jù)庫連接)是微軟公司開放服務結(jié)構(gòu)(WOSA,WindowsOpenServicesArchitecture)中有關(guān)數(shù)據(jù)庫的一個組成部分,它提供了一組規(guī)范和一組對不同類型的數(shù)據(jù)庫進行訪問的標準API(應用程序編程接口)函數(shù)。這些API利用SQL語言來完成其大部分任務。一個基于ODBC的應用程序?qū)?shù)據(jù)庫的操作不依賴任何DBMS,所有對數(shù)據(jù)庫的操作由對應的DBMS的ODBC驅(qū)動程序完成。即不論是SQLSever、Access還是Oracle數(shù)據(jù)庫,均可用ODBCAPI進行訪問。ODBC的最大優(yōu)點:以統(tǒng)一的方式處理所有的數(shù)據(jù)庫。,1ODBC概述,ODBC體系結(jié)構(gòu),8.7.1ODBC技術(shù),1.ODBC應用程序(Application)ODBC應用程序是用一般程序設(shè)計語言編寫的程序。2.ODBCAPI函數(shù)3.ODBC管理器(Administrator)該程序位于Windows95控制面板(ControlPanel)中,其主要任務是管理安裝的ODBC驅(qū)動程序和管理數(shù)據(jù)源。4.ODBC驅(qū)動程序管理器(DriverManager)驅(qū)動程序管理器包含在ODBC32.DLL中,對用戶是透明的。應用程序不能直接調(diào)用ODBC驅(qū)動程序,只可調(diào)用ODBC驅(qū)動程序管理器提供的ODBCAPI函數(shù),再由ODBC驅(qū)動程序管理器負責把相應的ODBC驅(qū)動程序加載到內(nèi)存中,同時把應用程序訪問數(shù)據(jù)的請求傳送給ODBC驅(qū)動程序。,8.7.1ODBC技術(shù),5.ODBC驅(qū)動程序ODBC驅(qū)動程序具體負責把SQL請求傳送到數(shù)據(jù)源的DBMS中,再把操作結(jié)果返回到ODBC驅(qū)動程序管理器。后者再把結(jié)果傳送至客戶端的應用程序。每種支持ODBC的數(shù)據(jù)庫都擁有自己的驅(qū)動程序,一種驅(qū)動程序只能固定地與對應的數(shù)據(jù)庫通信,不能訪問其他數(shù)據(jù)庫。6.數(shù)據(jù)源數(shù)據(jù)源就是需要訪問的數(shù)據(jù)庫。應用程序若要通過ODBC訪問一個數(shù)據(jù)庫,則首先要創(chuàng)建一個數(shù)據(jù)源,主要工作是指定數(shù)據(jù)源名(DSN,datasourcename),使其關(guān)聯(lián)一個目的數(shù)據(jù)庫以及相應的ODBC驅(qū)動程序。所以說,數(shù)據(jù)源實際上是一種數(shù)據(jù)連接的抽象,指定了數(shù)據(jù)庫位置和數(shù)據(jù)庫類型等信息。,8.7.1ODBC技術(shù),DSN有三種類型:(1)系統(tǒng)DSN——即是面向系統(tǒng)全部用戶的數(shù)據(jù)源,系統(tǒng)中的所有用戶都可以使用。(2)用戶DSN——即是僅面向某些特定用戶的數(shù)據(jù)源,只有通過身份驗證才能連接。(3)文件DSN——即是用于從文本文件中獲取數(shù)據(jù),提供多用戶訪問。,8.7.1ODBC技術(shù),(1)ODBC應用程序(2)ODBCAPI函數(shù)(3)ODBCDSN(datasourcename)(4)ODBC驅(qū)動程序管理器(5)ODBC驅(qū)動程序(6)數(shù)據(jù)源,ODBC體系結(jié)構(gòu)的組成,8.7.1ODBC技術(shù),2.ODBC體系的工作流程,應用程序要訪問一個數(shù)據(jù)庫,首先必須用ODBC管理器注冊一個數(shù)據(jù)源。ODBC管理器根據(jù)數(shù)據(jù)源提供的數(shù)據(jù)庫位置、數(shù)據(jù)庫類型及ODBC驅(qū)動程序等信息,建立起ODBC與具體數(shù)據(jù)庫的聯(lián)系。應用程序?qū)⒁褎?chuàng)建好的數(shù)據(jù)源名提供給ODBC,ODBC就能建立起與相應數(shù)據(jù)庫的連接,為訪問數(shù)據(jù)庫做好準備。。在ODBC中,ODBCAPI函數(shù)不能直接訪問數(shù)據(jù)庫,必須通過ODBC驅(qū)動程序管理器與數(shù)據(jù)庫交換信息。ODBC驅(qū)動程序管理器在應用程序和數(shù)據(jù)源之間起著轉(zhuǎn)換與管理的作用。,8.7.1ODBC技術(shù),3.創(chuàng)建SQLSeverDSN,(1)在“控制面板”中的“管理工具”下雙擊“數(shù)據(jù)庫(ODBC)”圖標,打開“ODBC數(shù)據(jù)源管理器”,在“ODBC數(shù)據(jù)庫管理器”中可以選擇“用戶DSN”、“系統(tǒng)DSN”、“文件DSN”。,,8.7.1ODBC技術(shù),(2)如果要添加一個新的數(shù)據(jù)源可以單擊“添加”按鈕,彈出“創(chuàng)建新數(shù)據(jù)源”對話框,,,8.7.1ODBC技術(shù),(3)在上圖中選擇驅(qū)動程序SQLServer,單擊“完成”按鈕。彈出“創(chuàng)建到SQLServer的新數(shù)據(jù)源”,如圖所示。,,本主機名稱,8.7.1ODBC技術(shù),(4)單擊“下一步”,出現(xiàn)選擇SQLServer數(shù)據(jù)庫服務器對登錄帳戶的身份驗證方式的對話框,可以選擇Window身份驗證或SQLServer身份驗證。,,8.7.1ODBC技術(shù),(5)單擊“下一步”,在“更改默認的數(shù)據(jù)庫為”下拉列表框中選擇所創(chuàng)建的數(shù)據(jù)庫名稱,,8.7.1ODBC技術(shù),,8.7.1ODBC技術(shù),8.7.2ADO技術(shù),1ADO的概述ActiveXDataObject(ADO)是繼ODBC之后功能強大的數(shù)據(jù)訪問技術(shù),是基于OLEDB的訪問接口,它是面向?qū)ο蟮腛LEDB技術(shù),繼承了OLEDB的優(yōu)點。屬于數(shù)據(jù)庫訪問的高層接口。ADO對象模型定義了一組可編程的自動化對象,可應用于各種支持自動化特性的腳本語言。與一般的數(shù)據(jù)庫接口相比,ADO可更好的用于網(wǎng)絡(luò)環(huán)境,通過優(yōu)化技術(shù),它盡可能的降低網(wǎng)絡(luò)流量;ADO的另一個特性是使用簡單,因為它是面向高級用戶的數(shù)據(jù)庫接口,而且使用一組簡化的接口用以處理各種數(shù)據(jù)源。,,ADO的對象模型圖,8.7.2ADO技術(shù),2、ADO對象模型,在ADO模型中,主體對象只有三個:Connection、Command、Recordset,其他四個集合對象為Errors、Propertie、Parameters和Fields,這些對象組成了ADO對象模型。典型的ADO應用是:(1)使用Connection對象與數(shù)據(jù)源建立連接;(2)然后用一個Command對象給數(shù)據(jù)庫發(fā)出操作命令;(3)Recordset對象對結(jié)果集數(shù)據(jù)進行維護或者瀏覽等操作。Recordset對象。Recordset對象代表一個表的記錄集或命令執(zhí)行的結(jié)果,在記錄集中,總有一個當前記錄。記錄集是ADO管理數(shù)據(jù)的基本對象,它是一種表狀結(jié)構(gòu),每一行對應一個記錄(Record),每一列對應一個域(Field)。Recordset對象也可通過游標對記錄進行訪問。,8.7.2ADO技術(shù),,8.7.3VB連接數(shù)據(jù)庫實例,1.數(shù)據(jù)連接對象介紹VisualBasci6.0提供了一個新的數(shù)據(jù)庫接對象:ADODB,簡稱ADO。ADO對象中最常用的屬性是Connection和Recordset。Connection屬性實現(xiàn)連接對象,它可以是SQLServer,Oracle,Access,或者ODBC等;Recordset對象實現(xiàn)對當前ADO對象所連接的表進行各種操作。微軟公司提供了一個控件Adodc控件,它是一個封裝了ADODB對象大部功能的控件,不是VB6.0內(nèi)部的部件,屬于外部控件。因此,當需要它的時候,必須調(diào)用“部件”對話框,將它加入到工具箱中,方法如下:進入VB,右擊工具箱,在彈出的菜單中選擇“部件”窗體中選擇“控件”選項卡,然后在控件列表框選擇下列控件(打勾表示選中):MicrosoftADODataContrl6.0(SP4)(ODLEDB);MicrosoftDataGridDataContrl6.0(SP4)(ODLEDB)。,,“部件”窗體,8.7.3VB連接數(shù)據(jù)庫實例,3、ADO控件連接SQLServer數(shù)據(jù)庫ADOData控件使用ActiveX數(shù)據(jù)對象來快速建立數(shù)據(jù)綁定的控件和數(shù)據(jù)提供者之間的連接。只要你把ADODC控件添加到你的程序中,就可以使用它來操作數(shù)據(jù)庫。ADO控件中ConnectionString屬性和RecordSource屬性是兩個非常重要的屬性。(1)ConnectionString屬性ConnectionString屬性值是一個字符串,可以包含進行一個連接所需的所有設(shè)置值。在該字符串中所傳遞的參數(shù)是與驅(qū)動程序相關(guān)的。例如:ODBC驅(qū)動程序允許該字符串包含驅(qū)動程序、提供者、缺省的數(shù)據(jù)庫、服務器、用戶名以及密碼等。類似下面的字符串。,8.7.3VB連接數(shù)據(jù)庫實例,Drive={SQLServer};server=hl;uid=sa;pwd=;database=northwind(2)RecordSource屬性RecordSource屬性包含一條語句或一個關(guān)系表名稱,用于決定從數(shù)據(jù)庫檢索什么信息。,8.7.3VB連接數(shù)據(jù)庫實例,3ADO對象在VisualBasic的應用程序中通過ADO對象訪問SQLServer,ADO的主要對象包括Connection對象、Command對象、Recordset對象。(1)Connection對象提供與數(shù)據(jù)庫的連接。可以理解為前端應用程序訪問數(shù)據(jù)庫服務器而建立的一個通道。(2)Recordset對象返回對當前數(shù)據(jù)庫操作的結(jié)果集。可以理解為容納從數(shù)據(jù)庫中查詢到數(shù)據(jù)的容器。,8.7.3VB連接數(shù)據(jù)庫實例,(3)Command對象Command是操作數(shù)據(jù)庫指令的ADO對象,可以接受SQL指令、表的操作指令和存儲過程指令,也可以發(fā)送SQL語句的命令。一般用來執(zhí)行SQL查詢,增加、刪除和在線更新數(shù)據(jù)庫中的數(shù)據(jù)。,8.7.3VB連接數(shù)據(jù)庫實例,,(4)ADODB對象連接SQLServer數(shù)據(jù)庫有兩種連接方法,一種是以WINDOWNT集成安全模式;另一種是指定用戶名和密碼的方式。以WINDOWNT集成安全模式的連接方法如下:DimconAsNewADODB.Connectioncon.Open"Provider=SQLOLEDB.1;IntegratedSecurity=SSPI;PersistSecurityInfo=False;InitialCatalog=Northwind"以SQLServer數(shù)據(jù)庫自帶的帳號“sa“登錄連接(它默認無密碼):DimconAsNewADODB.Connectioncon.Open"Provider=SQLOLEDB.1;PersistSecurityInfo=False;UserID=saPWD=;InitialCatalog=Northwind",8.7.3VB連接數(shù)據(jù)庫實例,,5ADO對象使用舉例,8.7.3VB連接數(shù)據(jù)庫實例,- 1.請仔細閱讀文檔,確保文檔完整性,對于不預覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點此認領(lǐng)!既往收益都歸您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 數(shù)據(jù)庫連接 技術(shù)
鏈接地址:http://www.hcyjhs8.com/p-11543591.html