tft每日頭條

 > 科技

 > 數據庫地址表

數據庫地址表

科技 更新时间:2024-07-23 22:15:19

【分享成果,随喜正能量】你多學一樣本事,就少說一句求人的話。我始終相信一句話:隻有自己足夠強大,才不會被别人踐踏。

《VBA數據庫解決方案》教程是我推出第二套教程,目前已經是第一版修訂了。這套教程定位于中級,是學完字典後的另一個專題講解。數據庫是數據處理的利器,教程中詳細介紹了利用ADO連接ACCDB和EXCEL的方法和實例操作,教程第一版的修訂内容主要是完成所有程序文件的32位和64位OFFICE系統測試。

這套教程共兩冊,八十四講,今後一段時間會給大家陸續推出修訂後的教程内容。今日的内容是第7講:打開數據庫的數據記錄集。

數據庫地址表(打開數據庫的數據記錄集)1

第七講 如何利用Recordset對象打開數據庫的數據記錄集

我們上一講講了Recordset 對象的一些屬性、方法和事件。我們今日繼續講解Recordset 對象的相關知識,如何利用Recordset對象打開數據庫的數據記錄集合。

在講解之前,我們還要補充些必要的知識點:

數據庫地址表(打開數據庫的數據記錄集)2

1 Recordset 對象的更新和訪問

1.1 Recordset 對象能夠支持兩種更新類型

① 立即更新,一旦調用 Update 方法,所有更改被立即寫入數據庫。

② 批更新,provider 将緩存多個更改,然後使用 UpdateBatch 方法把這些更改傳送到數據庫。

1.2 另外在訪問記錄的時候,ADO定義了 4 中不同的遊标(指針)類型

① 動态遊标 :允許您查看其他用戶所作的添加、更改和删除

② 鍵集遊标 :類似動态遊标,不同的是您無法查看有其他用戶所做的添加,并且它會防止您訪問其他用戶已删除的記錄。其他用戶所做的數據更改仍然是可見的。

③ 靜态遊标 :提供記錄集的靜态副本,可用來查找數據或生成報告。此外,由其他用戶所做的添加、更改和删除将是不可見的。當您打開一個客戶端 Recordset 對象時,這是唯一被允許的遊标類型。

④ 僅向前遊标: 除僅允許在記錄中向前滾動之外,其行為類似靜态遊标。這樣,當需要在 Recordset 中單程移動時就可提高性能。

1.3為什麼要設計這四個遊标類型呢?

這就是搭建數據庫的良苦用心,這四種類型也就是客戶訪問數據庫的不同類型,或者稱之不同的權限,有的是完全所有權權限訪問的,任何訪問都可以享用,有的隻是擁有部分權限,這要依據用戶的性質來決定你所享受的權限了。當然這點和VBA的聯系還不是十分的密切,隻是講到數據庫和大家順帶說一下。

2 ADO三個對象間的相互聯系

2.1 Command對象和Recordset對象依賴于Connection對象的連接;

2.2 Command對象結合SQL命令可以取代Recordset對象,但遠沒有Recordset對象靈活、實用;

2.3 Recordset對象它隻能實現數據表内記錄集操作. 記錄集(Recordset):對表執行查詢操作時,返回的一組特定記錄。

數據庫地址表(打開數據庫的數據記錄集)3

3 打開一個Recordset記錄集

一定要清楚,打開記錄集前要連接數據庫,連接Connection請參考上一講内容;

Dim cnADO As New ADODB.Connection

Dim strPath As String

strPath = ThisWorkbook.Path & "\mydata.accdb"

cnADO.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & strPath

在打開記錄集前還要做的工作有:聲明Recordset對象,創建Recordset對象

Dim rsZYS As ADODB.Recordset

Set rsZYS = New ADODB.Recordset

rsZYS.Open "職員表", cnADO, 1, 3

MsgBox rsZYS.RecordCount

rsZYS.Close

cnADO.Close

Set rsZYS = Nothing

Set cnADO = Nothing

數據庫地址表(打開數據庫的數據記錄集)4

代碼解讀:

① rsZYS.Open "職員表", cnADO, 1, 3是打開記錄集,。

② MsgBox rsZYS.RecordCount 彈出對話框,提示職員表的信息個數

③ rsZYS.Close

cnADO.Close

關閉記錄集和數據庫的連接,注意要先關閉記錄集,再關閉連接,和打開的順序是相反的。

④ Set rsZYS = Nothing

Set cnADO = Nothing

釋放内存,

運行後會彈出記錄數:(數據庫内記錄行數)

數據庫地址表(打開數據庫的數據記錄集)5

這節的内容是我們開始進入數據庫内部的操作了,大家不要急,要慢慢來,我數據庫的講解是循序漸進的。

今日内容回向:

1 Recordset 對象 有幾種更新方式?

2 Recordset 對象 如何打開記錄集?

數據庫地址表(打開數據庫的數據記錄集)6

我20多年的VBA實踐經驗,全部濃縮在下面的各個教程中:

第7套教程(共三冊):《VBA之EXCEL應用》:是對VBA基本的講解

第1套教程(共三冊):《VBA代碼解決方案》:是入門後的提高教程

第4套教程(16G):VBA代碼解決方案之視頻(第一套的視頻講解)

第3套教程(共兩冊):《VBA數組與字典解決方案》:是對數組和字典的專題講解

第2套教程(共兩冊):《VBA數據庫解決方案》:是對數據庫的專題講解

第6套教程(共兩冊):《VBA信息獲取與處理》:講解VBA的網絡及跨程序應用

第5套教程(共兩冊):VBA中類的解讀和利用:類及接口技術的講解

第8套教程(共三冊):VBA之Word應用(最新教程):word中VBA的利用

上述教程的學習順序:

① 7→1→3→2→6→5或者7→4→3→2→6→5。

② 7→8

  • 如何學習VBA呢? 概括的說就是: 學習過程中要信、解、受、持,更要有回向的業力。無論您在學習的任何階段,都要對照教程的知識點加持自己的實際工作,總會有豐厚的收獲。
,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved