《數據訪問技術》PPT課件.ppt_第1頁
《數據訪問技術》PPT課件.ppt_第2頁
《數據訪問技術》PPT課件.ppt_第3頁
《數據訪問技術》PPT課件.ppt_第4頁
《數據訪問技術》PPT課件.ppt_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第18章數據訪問技術 數據庫是一門復雜的技術 在當前的軟件開發(fā)中得到了廣泛的應用 NET為應用程序對數據庫的訪問提供了友好而且強大的支持 VisualStudio2008對數據庫提供了全方位的支持 ADO NET并不是ADO對象的下一代 而是在 NetFramework平臺中負責數據存取的對象 18 1數據庫的基本知識 對于數據管理 沒有數據庫技術之前 可能需要把數據記錄記錄在紙介質上 這樣查找數據的效率就很低 安全性能差 現在有了數據庫的支持 就可以非常迅速的建立起自己的數據庫 并進行管理和操作 18 1 1數據庫簡介 數據庫技術產生于20世紀60年代中期 是數據管理的最新技術 是計算機科學的重要分支 數據庫技術是應數據管理任務的需要而產生的 數據管理是指如果對數據進行分類 組織 編碼 存儲 檢索和維護 它是數據處理的中心問題 經歷了人工管理 文件管理和數據庫系統三個發(fā)展階段 人工管理階段在20世紀50年代中期以前 當時計算機主要用于科學計算 人工管理數據具有以下的特點 數據不保存 數據需要由應用程序自己管理 沒有相應的軟件系統負責數據的管理工作 數據不共享 數據不具有獨立性 數據的邏輯結構或物理結構發(fā)生變化后 必須對應用程序做相應的修改 這就進一步加重了開發(fā)人員的負擔 18 1 2SQL語言簡介 SQL語言是1874年由Boyce和Chamberlin提出的 1875年至1879年IBM公司SanJoseResearchLaboratory研制的關系數據庫管理系統原型系統SystemR實現了這種語言 自SQL語言成為國際標準語言以后 各個數據庫廠家紛紛推出各自支持的SQL軟件或與SQL的接口軟件 這就為不同數據庫系統之間的相互操作有了共同的基礎 SQL語言是一個綜合的 通用的 功能極強且簡潔易學的語言 主要的特點包括 綜合統一 高度非過程化面向集合的操作方式 語言簡單 易學易用 18 1 3VisualStudio2008對數據庫的支持 VisualStudio2008中提供了對SQLServer2005Express版本的數據庫 安裝VisualStudio2008時 選擇默認安裝 安裝完后 右擊 我的電腦 圖標 在彈出的菜單中選擇 管理 命令 如果安裝正確的話 展開 服務和應用程序 節(jié)點 可以看到 SQLServer配置管理器 如圖所示 計算機管理 18 2SQL語言 VisualStudio2008為了全方位支持SQL語言 提供了許多易用的工具來支持SQL語言的各個方面 下面就逐一介紹各個工具 18 2 1定義 刪除與修改數據表 在 服務器資源管理器 面板中選擇 數據連接 項 新建一個與數據庫 Northwind 的連接 在該數據庫連接中找到 表 節(jié)點并右擊 在彈出的菜單中選擇 添加新表 命令 接著VisualStudio2008將自動轉入創(chuàng)建數據表的界面 如圖所示 創(chuàng)建數據表 18 2 2顯示數據 如果想顯示數據 可以右擊表MyTable 選擇彈出菜單中的 顯示表數據 命令 點擊選擇該命令 VisualStudent2008將會自動打開顯示數據的界面 如圖所示 在圖中 可以直接在ID和Name列的下方輸入相應的數據即可添加數據至表Student 如圖所示 顯示數據界面輸入數據 18 2 3查詢 如果要實現查詢功能 可以在VisualStudio2008中進行數據查詢工作 在相應的數據表上右擊 選擇 新建查詢 命令 VisualStudio2008將彈出一個對話框 提示讀者選擇要查詢的表 如圖所示 選擇MyTable表 單擊 添加 按鈕 VisualStudio2008將自動將表添加到查詢界面中 如圖所示 添加表查詢界面 18 2 4存儲過程 如果要建立存儲過程 可以在VisualStudio2008中用向導自動建立 在 服務資源管理器 中 右擊選擇 存儲過程 如圖所示 在出現的選項中選擇 添加新存儲過程 如圖所示 就會自動建立存儲過程如圖所示 選擇存儲過程 添加存儲過程 自動建立存儲過程 18 3連接和操作數據庫 ADO NET是一組向 NET程序員公開數據訪問服務的類 為創(chuàng)建分布數據共享應用程序提供了豐富的組件 為 NETFramework中不可缺少的一部分 ADO NET中的結構架構如圖所示 ADO NET結構 18 3 1ADO NET的概述 ADO NET通過數據處理將數據訪問分解為多個可以單獨使用或者順序使用的不連續(xù)組件 通常包括用于數據連接到數據庫 執(zhí)行命令和檢索結果的 NETFramework數據提供程序 下列將逐一介紹各個概念 1 Connection對象2 Command對象3 DataReader對象4 DataSet對象 18 3 2鏈接數據對象Connection 通過ADO NET的各個對象的相互配合 就可以連接和操作數據庫 下面將逐一講解各個對象的用法 要訪問數據庫 首先要創(chuàng)建和打開數據庫鏈接 Connection對象主要用于處理對數據庫的連接和管理數據庫事務 著重說明一下 創(chuàng)建鏈接的方式依賴于要訪問的數據庫的類型 用于創(chuàng)建和打開MicrosoftSQLServer數據庫的鏈接的格式如下 stringconnectionString Server Localhost database pubs uid sa pwd xxx SqlConnectionmyConnection newSqlConnection connectionString myConnection Open 18 3 3操作數據對象Command和讀取數據對象DataReader 當使用Connection對象打開鏈接后 就可以用一個包含SQL語句的SQL字符串 通過Command對象和DataReader對象來操作數據庫 基本格式如下 stringcmdString Select FromEmployees SqlCommandmyCmd newSqlCommand cmdString myConnection SqlDataReadermySR newmyCmd ExecuteReader 18 3 4數據集對象DataSet 本節(jié)示例參考 示例代碼 Chap18 TestDataSet 當需要獲取一些數據庫記錄并要快速顯示在網頁上 那么應該使用DataReader對象 可是如果要操作斷開連接的內存數據庫記錄 就需要使用DataSet對象 DataSet對象是ADO NET中最復雜的對象 該對象選定的數據在內存中存儲 DataSet對象提供了一個記錄集 可以包含一個或多個DataTable類 它們代表數據庫表 同時可以用DataRelation類定義表之間的關系 最后DataView類代表DataTable的視圖 DataAdapter類是DataSet與它代表的數據源之間的橋梁 使用DataAdapter對象和DataSet對象可以這樣讀取數據庫 18 4數據綁定技術 在快速應用程序開發(fā)中 NET讓整個數據綁定的概念超越了原來簡單的把控件附加到數據表格上的概念 本節(jié)將在ADO NET基礎上介紹控件的數據綁定技術 18 4 1有關數據綁定概念 數據綁定是指把控件與存儲在數據源中的信息綁定在一起 數據源可以是表達式 屬性 方法 集合 甚至另一個控件的屬性 實現綁定后一個好處就是只要程序中相應的數據發(fā)生變法 那么與其綁定的表達式 屬性 方法 集合 屬性也會隨之改變 數據綁定的重點不是數據部分 而是綁定部分 如果要在控件綁定屬性中顯示綁定的數據 就需要顯示調用DataBind 方法 該方法是頁和所有服務器控件的方法 通常是在Page Load事件調用DataBind 如下所示 Protectedvoidpage Load ObjectSrc EventArgsE DataBind 18 4 2實現綁定數據源 本節(jié)示例參考 示例代碼 Chap18 BindDatesouce 理解數據綁定的工作原理的最好辦法是看幾個例子 下面兩小節(jié)將講解如何把數據綁定到服務器控件上 數據源為數組和數據庫 下面通過一個把數組中的數據綁定到DropDownList控件中的實例來講解 首先產生一個數組 然后設置DropDounList控件的DataSource屬性 接著調用DataBind方法 18 5數據源控件 數據源控件的主要作用是實現與數據連接的操作 VisualStudio2008中的數據源控件分別為SqlDataSource控件 AccessDataSource控件 LinqDataSource控件 ObjectDataSource控件 XmlDataSource控件和SiteMapDataSource控件 如圖所示 數據源控件 18 5 1SQL數據源控件SqlDataSource 本節(jié)示例參考 示例代碼 Chap18 TestSqlDataSource 通過SqlDataSource控件 可以使用Web控件訪問位于關系數據庫中的數據 包括MicrosoftSQLServer和Oracle數據庫以及OLEDB和ODBC數據源 該控件可以跟數據訪問控件一起使用 用少量代碼或者不用代碼在ASP NET網頁上顯示和操作數據 在提供用于連接到數據庫的連接字符串和使用數據的SQL語句或存儲過程后 SqlDataSource控件就可以代替ADO NET類 使網頁訪問和操作數據 因為在運行時 該控件會自動打開數據連接 執(zhí)行SQL語句或存儲過程 然后選定數據 最后關閉連接 18 5 2Access數據源控件AccessDataSource 本節(jié)示例參考 示例代碼 Chap18 TestAccessDataSource 在小型網站的開發(fā)中 經常會用到Access數據庫 本節(jié)將介紹如何使用AccessDataSource控件來連接MicrosoftAccess數據庫 檢素該類型數據庫中 mdb文件中的數據 AccessDataSource控件繼承了SqlDataSource類 使用System Data OleDb提供程序連接到MicrosoftAccess數據庫 為了方便用戶配置數據源并綁定到相應的控件上 可以使用數據源配置界面 下面將詳細演示如何使用數據源配置界面 18 5 3對象數據源控件ObjectDataSource 本節(jié)示例參考 示例代碼 Chap18 TestObjectDataSource 在網站的開發(fā)中 經常會用到類對象中的數據 本節(jié)將介紹如何使用ObjectDataSource控件來連接類對象 為了方便用戶配置數據源并綁定到相應的控件上 可以使用數據源配置界面 下面將詳細演示如何使用數據源配置界面 運行結果 18 5 4Xml數據源控件XmlDataSource 本節(jié)示例參考 示例代碼 Chap18 TestXmlDataSource XmlDataSource控件的作用就是檢索XML數據 然后編程訪問或者將其綁定到其他控件 XmlDataSourc控件非常簡單 無須手寫代碼 就可以實現對XML數據的訪問 過濾以及轉換 同時XML數據的訪問不僅可以從本地文件進行 而且也可以從指定的URL地址自動下載 為了方便用戶配置數據源并綁定到相應的控件上 可以使用數據源配置界面 下面 將詳細演示如何使用數據源配置界面 18 6數據綁定控件 ASP NET的數據訪問控件有Repeater控件 Datalist控件 GirdView控件 DetailsView控件 FormView控件和ListView控件 如圖所示 下面將逐一介紹 數據訪問控件 18 6 1重復控件Repeater 本節(jié)示例參考 示例代碼 Chap18 TestRepeater Repeater控件是一個模板控件 可以使用網頁中的任何可用數據做數據源 并且能夠創(chuàng)造出自定義的列表 該控件可以靈活的控制數據 還可以重復操作 因為該控件沒有默認的外觀 所以用戶可以決定以垂直 水平 在一行內或者其他方式布置元素 配置模板 18 6 2數據列表控件DataList 本節(jié)示例參考 示例代碼 Chap18 TestDataList DataList控件又稱為數據列表控件 因為它是模板控件 所以可以非常靈活的顯示數據 同時又因為寬提供了對顯示數據排序 編輯和分頁等支持 所以它具有更強大的功能 也是一個非常強大的數據綁定控件 DataList控件可以說是另一種Repeater控件 它與Repeater控件一樣重復清單的方式顯示數據項目 但是該控件比Repeater控件在使用上更靈活一些 更易于設計和維護 它在Repeater控件的基礎上又增加了兩種模板 SelectedItemTemplate 選擇模板 當用戶選擇該控件的某項時 控制其的顯示 EditItemTemplate 編輯模板 設置進行編輯而選定的項 18 6 3網格視圖控件GirdView 本節(jié)示例參考 示例代碼 Chap18 TestGirdView DataGrid控件又稱為網格視圖控件 以表格的形式顯示數據 DataGrid控件將數據源的字段顯示為表中的列 DataGrid控件中的每一行表示數據源中的一個記錄 同時該控件還支持排序 分頁 編輯和刪除等操作 當數據源的大小超過頁面的范圍 就可以使用分頁機制 DataGrid控件自帶了分頁機制 可以在用戶不作任何處理的情況下 直接將數據源的行分成多頁顯示 18 6 4其他控件 呈現多列數據時 可以使用Repeater控件 DataList控件和GridView控件 但是如果要呈現單列數據 即常用的數據明細時 就會使用到DetailsView控件和FormView控件 雖然DetailsView控件的布局固定 自定義數據顯示的布局功能有限 而FormView數據控件都有很強的自定義布局能力 但是兩者都內置了分頁和排序等功能 DetailsView控件在功能上與GridView控件非常相似 一次呈現一條表格形式的記錄 并提供翻閱多條記錄以及插入 更新和刪除記錄的功能 FormView控件一次呈現數據源中的一條記錄 并提供翻閱多條記錄以及插入 更新和刪除記錄的功能 不過 兩者之間的差別在于 DetailsView控件使用基于表格的布局 在這種布局中 數據記錄的每個字段都顯示為控件中的一行 而FormView控件則不指定用于顯示記錄的預定義布局 實際上 用戶將創(chuàng)建包含控件的模板 以顯示記錄中的各個字段 該模板包含用于設置窗體布局的格式 控件和綁定表達式 18 7其他數據庫介紹 除了SQLServer系列的數據庫軟件之外 還有許多其他的數據庫服務軟件 下面簡要介紹其他的數據庫軟件 18 7 1MySQL數據庫 MySQL是一款非常著名的數據庫軟件 它是一個真正的多用戶 多線程SQL數據庫服務器 其最大優(yōu)點就是開源免費 MySQL提供了很好的SQL語言支持 但面對大型數據庫軟件有點力不從心 而且配套軟件不夠完善 隨著開源社區(qū)的不斷努力 一款名為SQLyog

溫馨提示

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

評論

0/150

提交評論