自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

VB.NET數(shù)據(jù)庫基礎(chǔ)教程之全面解析DataAdapter類

開發(fā) 后端
VB.NET數(shù)據(jù)庫基礎(chǔ)教程深入細致為你講解關(guān)于DataAdapter類的使用,其實DataAdapter類是數(shù)據(jù)庫和程序之間的橋梁,它可以執(zhí)行Command對象是一樣的。

VB.NET數(shù)據(jù)庫基礎(chǔ)教程今天我們來簡介一下關(guān)于DataAdapter類,可能大家對于它不是很熟悉,在這里呢和大家分享一下關(guān)于DataAdapter類的原理機制,讓大家更好的運用。

VB.NET數(shù)據(jù)庫基礎(chǔ)教程之DataAdapter類

DataAdapter是數(shù)據(jù)提供程序的一個子組件。與Connection和Command類一樣,DataAdapter類也存在于ODBC、OLE DB、SQL Server和Oracle中。本節(jié)介紹OLE DB 的DataAdapter類,注意,不同版本的DataAdapter類功能相同。
DataAdapter類是數(shù)據(jù)庫和程序之間的橋梁,它可以執(zhí)行Command對象,從數(shù)據(jù)庫中檢索數(shù)據(jù),再填充到DataSet對象中,或使用DataSet對象插入、更新和刪除數(shù)據(jù)庫中的數(shù)據(jù)。
DataAdapter用于填充DataSet對象,所以本節(jié)開始詳細探討DataSet對象。后續(xù)的章節(jié)將進一步介紹DataSet對象,討論這個類的更多知識和用法。
DataAdapter最常用于從數(shù)據(jù)庫中檢索數(shù)據(jù),并填充DataSet對象,所以先看看用于這種目的的構(gòu)造函數(shù)。

Command類的***個構(gòu)造函數(shù)使用SQL字符串和Connection對象。下面的代碼在DataAdapter的構(gòu)造函數(shù)中使用前面例子中的Command對象。

下一行代碼聲明一個表示DataSet類的新對象,注意DataSet是獨立于提供程序的,因為它不帶ODBC、OLE DB、SQL或Oracle前綴。DataSet的構(gòu)造函數(shù)提供了一個重載列表,但一般在初始化時不帶參數(shù)。
初始化DataAdapter和DataSet對象后,就要從數(shù)據(jù)庫中檢索數(shù)據(jù),并填充DataSet對象。使用DataAdapter的Fill方法來完成填充工作。Fill方法也提供了一個重載列表,但最常用的是下面代碼中的Fill方法。該方法指定了表示DataSet的對象和一個表名,當(dāng)要把多個表添加到DataSet對象中時,要使用該表名進行表映射。這個表名還可以用于引用DataSet對象中的表。注意不必在SQL語句的FROM子句中使用指定的表名,可以使用任何表名。

給DataSet對象填充數(shù)據(jù)后,DataAdapter的工作就完成了,應(yīng)調(diào)用Dispose方法釋放DataAdapter占用的資源,并把它設(shè)置為Nothing。Command的工作也完成了,***也刪除它,并把它設(shè)置為Nothing,以釋放資源。另外,如果不進行更多的數(shù)據(jù)庫操作,應(yīng)關(guān)閉數(shù)據(jù)庫連接,對該連接調(diào)用Dispose方法。

  1. Dim objDataAdapter As New OleDbDataAdapter(objCommand)  
  2. Dim objDataSet As New DataSet  
  3. objDataAdapter.Fill(objDataSet, "Employees")  
  4. objDataAdapter.Dispose()  
  5. objDataAdapter = Nothing 
  6. objCommand.Dispose()  
  7. objCommand = Nothing 

DataAdapter 另一個常用的構(gòu)造函數(shù)把SQL語句直接傳送給DataAdapter,而不使用Command對象,如下面的代碼所示。在這個構(gòu)造函數(shù)中,傳送了字符串變量和表示數(shù)據(jù)庫連接的對象。在前面的例子中,是把Command對象傳送給DataAdapter,使DataAdapter能提取其中的連接信息。而在這個構(gòu)造函數(shù)中,為SQL語句使用了一個字符串,所以DataAdapter需要通過Connection對象了解如何與數(shù)據(jù)庫通信,以執(zhí)行SQL字符串。

  1. Dim strSQL As String = _ 
  2. "SELECT FIRST_NAME, LAST_NAME, FROM HR.EMPLOYEES"  
  3. Dim objDataAdapter As New OleDbDataAdapter(strSQL, objConnection)  
  4. Dim objDataSet As New DataSet  
  5. objDataAdapter.Fill(objDataSet, "Employees")  
  6. objDataAdapter.Dispose()  
  7. objDataAdapter = Nothing 

給DataSet對象填充數(shù)據(jù)后,就可以處理這些數(shù)據(jù)。DataSet對象包含一系列表,每個表都包含一系列行,每一行都包含一系列項,這些項表示行中的列。這聽起來很容易混淆,但實際上非常簡單,如下面的代碼所示。

代碼為DataRow聲明一個對象,它用于訪問Rows集合中的每一行,Rows集合放在Tables集合的表中。接著使用For Each循環(huán)迭代表中的行。使用DataRow對象的Item屬性,可以訪問行中的每一列,如下面的代碼所示。這行代碼把DataSet對象中每個雇員的姓名輸出到IDE的輸出窗口中。

***,使用完DataSet對象后,調(diào)用Dispose方法釋放DataSet對象占用的資源,并把它設(shè)置為Nothing。這是非常重要的,因為DataSet對象表示一個內(nèi)存數(shù)據(jù)高速緩存,即DataSet對象包含的所有數(shù)據(jù)都加載到內(nèi)存中,因此應(yīng)盡快釋放該內(nèi)存。

  1. Dim objDataRow As DataRow  
  2. For Each objDataRow In objDataSet.Table("Employees").Rows  
  3. Debug.WriteLine(objDataRow.Item("FIRST_NAME") & " " &_  
  4. objDataRow.Item("LAST_NAME")  
  5. Next  
  6. objDataSet.Dispose()  
  7. objDataSet = Nothing 

在修改完 DataSet對象中的數(shù)據(jù)后,可以使用DataAdapter的Update方法,把DataSet對象中的數(shù)據(jù)更新到數(shù)據(jù)庫中。這個方法很少使用,因為一般使用視圖或存儲過程給DataSet填充多個表中的數(shù)據(jù)。在關(guān)系數(shù)據(jù)庫中更新或插入數(shù)據(jù)時,通常使用存儲過程執(zhí)行插入或更新操作,再使用 Command對象執(zhí)行這些存儲過程。存儲過程可以執(zhí)行一個或多個SQL語句,并在這些語句上進行邏輯和有效性檢查。

以上是VB.NET數(shù)據(jù)庫基礎(chǔ)教程對DataAdapter類的簡介,以后還會對更多的類做詳細的簡介,請大家即時關(guān)注。

【編輯推薦】

  1. 介紹VB.NET繪圖方法的三個方面
  2. 快捷簡單的VB.NET編程事件方法介紹
  3. 簡單簡述VB.NET繪制圖形
  4. 詳談VB.NET事件編程
  5. 三個案例揭秘VB.NET語法規(guī)則
責(zé)任編輯:田樹 來源: 樂博網(wǎng)
相關(guān)推薦

2009-10-29 17:45:24

VB.NET線程

2009-11-02 14:48:45

VB.NET HOOK

2009-10-15 10:57:16

VB.NET Text

2009-10-09 15:20:26

VB.NET連接數(shù)據(jù)庫

2010-01-12 16:20:44

VB.NET類

2009-10-28 17:24:19

VB.NET介紹

2009-10-26 09:11:52

VB.NET基礎(chǔ)教程

2009-10-23 15:35:42

VB.NET實用教程

2009-10-28 17:08:57

VB.NET數(shù)據(jù)庫開發(fā)

2009-10-28 17:00:30

VB.NET數(shù)據(jù)庫

2009-10-13 17:31:50

VB.NET Acce

2010-01-08 10:37:50

VB.NET數(shù)據(jù)庫

2009-10-28 17:44:31

VB.NET語言

2009-10-28 10:04:53

VB.NET XmlW

2009-10-28 10:15:48

VB.NET框架類庫

2010-01-14 14:56:07

2010-01-12 10:40:58

VB.NET數(shù)據(jù)庫壓縮

2009-10-28 16:47:26

VB.NET訪問數(shù)據(jù)庫

2010-01-15 19:24:42

2010-01-15 18:24:14

VB.NET打開Not
點贊
收藏

51CTO技術(shù)棧公眾號