您所在的步驟...
? | 連接數(shù)據(jù)源。 |
? | 可選擇創(chuàng)建表示 SQL 查詢命令的對(duì)象。 |
? | 可選擇在 SQL 命令中將值指定為變量參數(shù)。 |
? | 執(zhí)行命令。如果命令以行返回,將行存儲(chǔ)在存儲(chǔ)對(duì)象中。 |
? | 可選擇對(duì)數(shù)據(jù)進(jìn)行定位、檢查、操作和編輯。 |
? | 適當(dāng)情況下,可以使用存儲(chǔ)對(duì)象中的變更對(duì)數(shù)據(jù)源進(jìn)行更新??蛇x擇在事務(wù)處理中嵌入更新數(shù)據(jù)。 |
? | 在使用事務(wù)之后,可以接受或拒絕在事務(wù)中所做的更改。結(jié)束事務(wù)。 |
討論
大量 Recordset 對(duì)象方法和屬性可用于對(duì) Recordset 數(shù)據(jù)行進(jìn)行檢查、定位以及操作。
Recordset 可看作行數(shù)組,在任意給定時(shí)間可進(jìn)行測(cè)試和操作的行為“當(dāng)前行”,在 Recordset 中的位置為“當(dāng)前行位置”。每次移動(dòng)到另一行時(shí),該行將成為新的當(dāng)前行。
有多種方法可在 Recordset 中顯式移動(dòng)或“定位”(Move 方法)。一些方法(Find 方法)在其操作的附加效果中也能夠做到。此外,設(shè)置某個(gè)屬性(Bookmark 屬性)同樣可以更改行的位置。
Filter 屬性用于控制可訪問的行(即這些行是“可見的”)。Sort 屬性用于控制所定位的 Recordset 行中的順序。
Recordset 有一個(gè) Fields 集合,它是在行中代表每個(gè)字段或列的 Field 集,可從 Field 對(duì)象的 Value 屬性中為字段賦值或檢索數(shù)據(jù)。作為選項(xiàng),可訪問大量字段數(shù)據(jù)(GetRows 和 Update 方法)。
在本教程中,您將要:
? | 假定將區(qū)號(hào)為“415”局號(hào)并以“5”開頭的電話號(hào)碼更改為虛構(gòu)的區(qū)號(hào)“777”。 |
? | 在 au_lname Field 對(duì)象的 Properties 集合中設(shè)置 Optimize 屬性以提高存儲(chǔ)和篩選性能。 |
? | 按作者的姓對(duì) Recordset 使用 Sort(排序)操作。 |
? | Filter(篩選)Recordset,使作者電話區(qū)號(hào)為“415”、局號(hào)為“5”的行成為僅可訪問(即可見的)行。 |
使用 Move 方法從頭至尾對(duì)經(jīng)過排序和篩選的 Recordset 定位。當(dāng) Recordset EOF 屬性表明已經(jīng)到達(dá)最后一行時(shí)停止。在 Recordset 中移動(dòng)時(shí),顯示作者的姓和名以及原始電話號(hào)碼,然后將 phone 字段中的區(qū)號(hào)改為“777”。(phone 字段中的電話號(hào)碼格式為“aaa xxx-yyyy”,其中 aaa 為區(qū)號(hào),xxx 為局號(hào)。)
rs("au_lname").Properties("Optimize") = TRUE
rs.Sort = "au_lname ASC"
rs.Filter = "phone LIKE '415 5*'"
rs.MoveFirst
Do While Not rs.EOF
Debug.Print "Name: " & rs("au_fname") & " " rs("au_lname") & _
"Phone: " rs("phone") & vbCr
rs("phone") = "777" & Mid(rs("phone"), 5, 11)
rs.MoveNext
Loop
下一頁 步驟 5