




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第二單元ADO.NET的特征ADO.NET是Microsoft公司定義的專門用于對數據庫進行訪問的模型,.NET應用程序使用它可以方便地實現對數據庫數據的添加、刪除、修改和查詢(也稱為檢索)。ADO.NET對象模型從整體上,ADO.NET的結構如下圖所示:
針對目前的數據庫的種類,.NETFramework數據提供器支持兩種類型的數據提供器:OLEDB數據提供器這種類型的數據提供器可以使用所有的OLEDB數據提供器,包括:SQLOLEDB提供器、OracleOLEDB提供器及JETOLEDB提供器;SQLServer數據提供器這個類型的數據提供器只能與MicrosoftSQLServer一起使用,若應用程序連接的后臺數據庫為SQLServer數據庫,建議使用SQLServer數據提供器,這樣可以充分發揮SQLServer數據庫服務器的效能。第三單元使用ADO.NET模型連接數據庫Connection連接組件應用程序使用Connection連接組件建立與一個數據源的連接。根據所連接的數據源的類型不同,有兩種不同的連接對象,它們分別是OleDBConnection和SqlConnection,這兩個對象分別用來連接OLEDB數據數據源和SQLServer數據源。Connection對象的常用屬性和方法:連接字符串,指定用于連接數據源的各種信息:Provider=SQLOLEDB;指明了要連接的數據源類型;UserID=guest;指明了連接數據庫所需要的用戶名;;Password=guest;指明連接數據庫的用戶密碼;InitialCatalog=MySchool;指明所連接的數據庫的名稱;dataSource=localhost指明數據庫所在的計算機的地址,此處表示數據庫與客戶程序運行在同一臺計算機上;舉例:DimconnAsNewOleDb.OleDbConnection("Provider=UserID=guest;Password=guest;InitialCatalog=MySchool;dataSource=VIC")conn.Open()conn.Close()聯機模式的數據存取在聯機模式的存取模式下,應用程序會持續連接到數據庫上。適用于數據要時時更新的開發環境上,并且數據是只讀。聯機模式下數據庫存取的步驟一、首先創建一個Connection對象建立與數據源的連接;二、然后,創建一個Command對象來引用一個SQL語句或一個存儲過程;三、執行SQL或存儲過程,返回結果集或受影響的記錄的行數;四、關閉連接。Command數據命令組件為了操作數據庫中的數據,必須使用數據命令組件,所謂數據命令就是一個SQL語句、或用來檢索、插入、刪除及修改數據庫中的數據的存儲過程;根據所操作的數據源類型不同,數據命令也有兩種類型:OleDbCommand和SqlCommand,它們分別用來操作OLEDB數據源和SQLServer數據源。
數據命令Command的常用屬性和方法:DataReader數據讀取器組件數據讀取器DataReader用來以只讀或只向前模式來從數據庫中檢索數據;使用數據讀取器可以快速地訪問數據并使用較少的內存,下表給出了數據讀取器的常用屬性和方法:
舉例一:DimconnAsNewOleDb.OleDbConnection("Provider=UserID=guest;Password=guest;InitialCatalog=MySchool;dataSource=VIC")conn.Open()DimcommAsNewOleDb.OleDbCommand("select*fromDepartments",conn)
DimdrAsOleDb.OleDbDataReaderdr=comm.ExecuteReader()DoWhiledr.ReadMessageBox.Show("系編號是:"&dr.Item("系編號")&"——系名稱是:"&dr.Item("系名稱"))Loop
dr.Close()conn.Close()舉例二:DimcommAsNewOleDb.OleDbCommand("selectcount(*)fromDepartments",conn)DimintCountAsInteger=0intCount=comm.ExecuteScalarMessageBox.Show("現有系數為:"&intCount)舉例三:DimcommAsNewOleDb.OleDbCommand("updateDepartmentssET系名稱='計算機系'where系編號='0001'",conn)DimintCountAsInteger=0intCount=comm.ExecuteNonQueryMessageBox.Show("更新已完成,更新的記錄數為:"&intCount)脫機模式的數據存取脫機模式的數據存取是指應用程序并不一直保持到數據源的連接。舉例:DimconnAsNewOleDb.OleDbConnection("Provider=SQLOLEDB;UserID=guest;Password=guest;InitialCatalog=MySchool;dataSource=VIC")conn.Open()DimcommAsNewOleDb.OleDbCommand("select*fromDepartments",conn)DimdaAsNewOleDb.OleDbDataAdapter(comm)DimdsAsNewDataSETds.Clear()da.Fill(ds,"Departments")DimdtAsNewDataTabledt=ds.Tables("Departments")ForiAsInteger=0Todt.Rows.Count-1MessageBox.Show("系編號是:"&dt.Rows(i)("系編號")&"——系名稱是:"&dt.Rows(i)("系名稱"))Nextconn.Close()DataAdapter數據適配器DataAdapter功能是根據一定的條件從數據庫中檢索數據并將檢索得到的結果存放到一個數據集中,或當應用程序改變了數據集中的數據時,數據適配器將改變的結果回寫到數據庫中。與Connection組件類似,根據數據源的類型不同,有兩種類型的數據適配器:OleDBDataAdapter與SqlDataAdapter,它們分別用來訪問OLEDB數據源和SQLServer數據源。DataAdapter有如下表所示的幾種構造函數:DataAdapter的常用屬性和方法:DataSET數據集DataSET是一個從數據庫中檢索的無連接的、緩存的數據庫記錄的集合;可以說DataSET對象是一個存儲在客戶端內存中的數據庫;DataSET有如下表所示的構造函數:一旦創建了DataAdapter對象和DataSET對象以后,接下來,就調用DataAdapter的Fill方法從數據庫中獲得數據并用獲得的結果填充到數據集中;DataAdapter對象的Fill方法的常用形式如下表:DataTableDataTable是DataSET中的表格,DataTable中每一條記錄是一個DataRow對象,DataTable中每一個字段是一個DataColumn對象;舉例:DimconnAsNewOleDb.OleDbConnection("Provider=SQLOLEDB;UserID=guest;Password=guest;InitialCatalog=MySchool;dataSource=VIC")conn.Open()DimcommAsNewOleDb.OleDbCommand("select*fromDepartments",conn)DimdaAsNewOleDb.OleDbDataAdapter(comm)DimdsAsNewDataSETds.Clear()da.Fill(ds,"Departments")DimdtAsNewDataTabledt=ds.Tables("Departments")ForiAsInteger=0Todt.Rows.Count-1MessageBox.Show("系編號是:"&dt.Rows(i)("系編號")&"——系名稱是:"&dt.Rows(i)("系名稱"))Nextconn.Close()DataGrid控件,數據綁定及顯示DataSET中的數據所謂“數據綁定”就是將把從數據庫檢索得到的數據與一個控件聯系起來,從而可以將數據顯示在控件上,DataGrid控件是顯示有多行結果的最佳控件;dg.DataSource=ds指定要綁定到DataGrid控件的數據源。可以綁定到DataGrid控件的數據源可以是:DataTable對象DataView對象DataSET對象dgProvider.DataMember="Provider"根據在DataGrid的DataSource屬性中設置的值的類型不同,在DataGrid的DataMember屬性中可能還要設置相應的值,對于在DataSource中設置為DataTable和DataView而言,在DataMember屬性中不用再設置值,而對于在DataSource中設置的是一個DataSET對象,則必須在DataMember中指定欲在DataGrid中顯示的表的表名。舉例DimcommAsNewOleDb.OleDbCommand("select*fromDepartments",conn)DimdaAsNewOleDb.OleDbDataAdapter(comm)DimdsAsNewDataSETds.Clear()da.Fill(ds,"Departments")
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 學校洗漱臺管理制度
- 學校網格化管理制度
- 學校陶藝社管理制度
- 學雷鋒員工管理制度
- 安技處安全管理制度
- 安置點保潔管理制度
- 實訓室使用管理制度
- 實驗室活動管理制度
- 客服部內部管理制度
- 室內高爾夫管理制度
- 山東省威海市實驗中學2025屆七下英語期末達標檢測試題含答案
- 2025年河北省中考麒麟卷地理(三)及答案
- 河南天一大聯考2025年高二下學期期末學業質量監測英語試題
- 農藥經營許可證培訓考試題庫及答案
- 財稅法考試試題及答案
- 2025年青海省公務員錄用考試《行測》真題及答案解析(記憶版)
- 2025入黨考試試題及答案
- DB32/T 4593-2023研究型醫院建設規范
- 基于輕量型CNN的無人機低空目標檢測研究
- DB3415-T 82-2024 急流救援技術培訓規范
- 智能制造系統-智能制造技術與未來
評論
0/150
提交評論