本篇文章給大家談談recordset,以及recordset遍曆對應的知識點,希望對各位有所幫助,不要忘了收藏本站!
一、 作為英語詞匯:
recordset指的是記錄集對象;資料集;資料錄集。recordset例句:
1. This topic explains how to sort your recordset. 本主題說明如何對記錄集排序。
2. In this case, the recordset contains records for all senior students. 在此例中,記錄集包含所有高年級學生的記錄。
column指的是列;專欄;行。column例句:
1. Note that this name must be the name of a column in the table. 請注意,此名稱必須是列在表中的名稱。
2. Click a cell in a blank table column that you want to turn into a calculated column. 單擊要轉換為計算列的空表格列中的一個單元格。
二、 在VB中:
Recordset (數據集)屬性: ⠥𐍩襈 描述 ⠯bject 對象表達式,其值是“應用於”列表中的對象,就是說數據庫中所有的表、記錄要通過它打開和操作。
Columns(列)屬性:用來定義列表框中的列的數,當值是 0 時,所有項目呈單列;當是 1 或者大於 1時 ,項目則會呈多列顯示。Columns 屬性隻能在界麵設置時指定。
Recordset 對象可支持兩類更新:立即更新和批更新。使用立即更新,一旦調用 Update 方法,對數據的所有更改將被立即寫入基本數據源。也可以使用 AddNew 和 Update 方法將值的數組作為參數傳遞,同時更新記錄的若幹字段。如果提供者支持批更新,可以使提供者將多個記錄的更改存入緩存,然後使用 UpdateBatch 方法在單個調用中將它們傳送給數據庫。這種情況應用於使用 AddNew、Update 和 Delete 方法所做的更改。調用 UpdateBatch 方法後,可以使用 Status 屬性檢查任何數據衝突並加以解決。
創建可更新Recordse對象的新記錄。基本語法如下:recordset.AddNew FieldList. ValuesFieldList可選。新記錄中字段的單個名稱、一組名稱或序號位置。Values可選.新記錄中字段的單個或一組值。如果Fields是數組,那麽Values也必須是有相同成員數的數組.否則將發生錯誤.字段名稱的次序必須與每個數組中的字段值的次序相匹配。使用AddNew方法創建和初始化新記錄.通過AddNew使用Supports方法可驗證是否能夠將記錄添加到當前的Recordset對象“扣.在調用AddNew方法後,新記錄將成為當前記錄.並在調用Update方法後繼續保持為當前記錄.如果Recordset對象不支持書簽,當移動到其他記錄時將無法對新記錄進行訪問.是否需要調用Requery方法訪問新記錄則取決於所使川的遊標類型.如果在編輯當前記錄或添加新記錄時調用AddNew, AD(〕將調用Update方法保存任何更改並創建新記錄。
52.使用完錯誤代碼之後, 應該隨手清空它,以免造成下次錯誤捕獲不正確,我們使用一uju error變量()
53.為了防止多次數據庫操作導致數據庫不完整( )我們可以使用(colse)
54. connection 對象為我們提供了三個與事務相關的方法,請寫上它們:開啟事務:(connedtion.begintrans ),結束事務並保有更改:
connection(.committrans ),結束事務並卻小更改:connection(.rollbacktrans )
55.如果我們查得到數據表中某個字段的信息需要用recordset對象的(fields )集合中的(name )對象。
56.取得field對象的方法是:set field=recordset.fields.item(i),我們可以通過field對象的(name)屬性得到字段名,還可以通過(
type)屬性得到字段的類型。
57.我們可以在記錄集內移動指針,以便操作不同的數據記錄,如果我們要將指針移到最後一條記錄,可以使用(recordset.movelast )方法
,將指針移到首記錄使用(recordset.movefirst )方法,移動到上一條記錄使用(recordset.previous )方法,移動到下一條記錄可使用(
recordset.movenext )方法。
58.刪除記錄,我們可以直接使用SQL語句中的delete語句,也可以將記錄查詢到之後使用recordset對象的( delete)方法來刪除當前記錄。
雖然直接使用Delete語句刪除記錄非常方便,但有時對於一些需要進行複雜判斷才決定是否刪除記錄的情況下,我們還是要使用recordset對象
的(delete )方法來刪除記錄。
59.更新一條記錄除可以使用update語句外,還可以將記錄查詢到之後,改變各字段的值,然後使用recordset對象的( addnew )方法來更新
數據。雖然直接使用update語句更新數據十分方便,但有時對於需要進行一些不規則更新的時候還是要使用到recordset對象的(addnew )方
法來更新數據記錄。
zzzzRecordSet對象的屬性可分為以下4種類型。
zzzz1)方式屬性:包括ActiveConnection屬性和Source屬性。
zzzz2)行為屬性:包括CursorType屬性、LockType屬性、Filter屬性、CacheSize屬性和MaxRecords屬性。
zzzz3)記錄指針移動屬性:包括BOF和EOF屬性、RecordCount屬性、BookMar屬性、AbsikytePosition屬性、PageSize屬性、AbsolutePage屬性和PageCount屬性。
zzzz4)數據維護屬性:包括EditMode屬性和Status屬性等。
1.方式屬性
zzzz(1) ActiveConnection屬性
zzzz此屬性用於指定鏈接字符串或Connection對象的名稱,方便RecordSet對象完成數據庫鏈接有前置動作。
zzzz(2) Source屬性
zzzz此屬性用於設置或返回一個字符串,指定要檢索數據庫服務器。包含存儲進程名、表名、SQL語句或在打開時用於為RecordSet提供記錄集合的開放Command對象。
2.行為屬性
zzzz(1)CursorType屬性:此屬性定義了指針的類型,不同的指針類型決定了對數據庫所能做的操作,它有4種可取值,如表7-9所示。
表7-9 CursorType屬性值說明
zzzz(2)LockType屬性:此屬性決定了是否可以更新數據以及RecordSet的更新是否可以批量進行。LockType屬性有4種可取值,如表7-10所示。
表7-10 LockType屬性值說明
zzzz(3)Filter屬性:此屬性用於過濾由數據庫服務器端所返回的數據,Filter屬性設定值如表7-11所示。
表7-11 Filter所示屬性值說明
zzzz(4)CacheSize屬性:此屬性指定保存在高速緩存中RecordSet記錄的數目,也就是客戶端每次由數據庫服務器端取回數據記錄的數目。對於隻能向前移動的記錄,默認值為1。
zzzz(5)MaxRecords屬性:該屬性設定返回給RecordSet記錄的最大數目,默認值為0,表明將所有記錄都加入到RecordSet中,打開RecordSet對象後,此屬性為隻讀。
3.記錄指針移動的屬性
zzzz(1)BOF和EOF屬性:這兩個屬性是用來判斷指針是否在RecordSet的首記錄之前或尾記錄之後。如果當記錄位於RecordSet的首記錄之前,則BOF返回True.如果當前記錄是位於RecordSet的尾記錄之後,則EOF返回True.如果BOF 和EOF都為True,則說明RecordSet中沒有記錄。
zzzz(2)RecordCount屬性:該屬性用於返回RecordSet中的記錄數。
zzzz(3)BookMark屬性:當創建一個允許使用BookMark屬性的RecordSet時,給每一個記錄都標上獨一無二的書簽。利用此屬性可以返回標記書簽的位置。
zzzz(4)AbsolutePosition屬性:此屬性可以用於設置RecordSet當前記錄的順序位置。
zzzz(5)PageSize屬性:當記錄集合返回到RecordSet中時,集合就會被劃分成任意大小的頁。利用此屬性可以頁記錄集合。
zzzz(6)AbsolutePage屬性:此屬性指定了指針的位置,通過改變它的值來通知ADO移動指定頁麵的開始位置。
zzzz(7)PageCount屬性:此屬性可用來返回RecordSet中的頁數。如果RecordSet最後一頁未滿,其中的記錄就少於PageCount值,則PageCount屬性值應由下麵的公式設定。
zzzzPageCount=(RecordCount+PageSize-1)/PageSize
4.數據維護屬性
zzzz(1)EditMode屬性:該屬性返回一個表明當前記錄編輯狀態的值。此屬性的返回值有3種如表7-12所示。
表7-12 EditMode返回值
zzzz(2)Status屬性:此屬性可以在實施一次批量更新後,查詢RecordSet的狀態。該屬性常用於多用戶鏈接管理。其返回值如表7-13所示。
表7-13 Status的返回值
定義:數據集(RecordSet)是一個本地的,斷開連接的數據庫,存在於內存當中。
因此,它存放了數據的所有部分。
可以先觀察如下的一段代碼:
Dim c As New ADODB.Connection
Dim r As New ADODB.Recordset
On Error GoTo handler
c.ConnectionString = connectStr
c.CursorLocation = adUseClient
c.Open打開數據庫連接
Set r.ActiveConnection = c打開連接後,把數據導入本地內存中的數據集(RecordSet)
r.Open SqlText, , adOpenKeyset, adLockBatchOptimistic, -1
Set r.ActiveConnection = Nothing' This disconnects the recordset.
c.Close
Set c = Nothing此步驟關閉數據庫連接
......後續步驟利用本地的數據庫(RecordSet)
......
' Recordset is now in disconnected state; do something with it.
r.Close
Set r = Nothing
......
注意到,在關閉了數據連接後,才使用數據庫RecordSet,使用的完全是本地的數據副本(這時候,已經斷開了連接,但還可以訪問所有的數據,因此),它包含了所有的數據。
關於recordset和recordset遍曆的介紹到此就結束了,不知道你從中找到你需要的信息了嗎?如果你還想了解更多這方麵的信息,記得收藏關注本站。
查看更多關於recordset的詳細內容...