免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
VBA數(shù)據(jù)庫(kù)解決方案第13講:如何獲取數(shù)據(jù)庫(kù)中表的相關(guān)信息

大家好,今天給繼續(xù)講解VBA數(shù)據(jù)庫(kù)解決方案的第13講:如何獲取數(shù)據(jù)庫(kù)中的表的信息.在處理表,特別是查詢的時(shí)候,我們需要一些表的信息,如表的名字,表的屬性,那么有沒(méi)有辦法在程序中獲得,并顯示出來(lái)呢?

今天的內(nèi)容就是講解如何把一個(gè)數(shù)據(jù)庫(kù)中的所有表的名稱,性質(zhì)列出來(lái),并放到一個(gè)工作表文件中。數(shù)據(jù)庫(kù)的講解有時(shí)候是枯燥的,但不講清楚很難再進(jìn)行下一步的操作,只能按大概的先后順序讓讀者慢慢的了解,掌握。有的朋友和我反饋說(shuō):都懂,就是代碼寫(xiě)不出來(lái),怎么辦?其實(shí)這時(shí)你缺少的就是實(shí)踐,一是要多實(shí)際練習(xí),一是要緊扣自己的需求,比如工作遇到什么問(wèn)題,馬上以問(wèn)題為切入點(diǎn),細(xì)致的研究分析。我在初學(xué)VBA的時(shí)候?yàn)榱伺粋€(gè)知識(shí)點(diǎn)需要反復(fù)的測(cè)試,還要去問(wèn)別人,但人家不告訴你啊,為了一個(gè)“WITH”的作用我問(wèn)了好幾遍,可沒(méi)人真正的告訴你?。磕菚r(shí)真的很難,沒(méi)有資料,求人難?,F(xiàn)在好了,進(jìn)入了知識(shí)的爆炸的年代,只要你想學(xué),只要你肯學(xué),肯于去專研,學(xué)會(huì)真的不難。

在我的講解中,盡可能讓講解能淺顯些,今日的問(wèn)題如何解決呢?我們還是直接看代碼,然后我再一步步的講解吧。

Sub mynaGetTables() '獲取所有表的名稱

   Dim catADO As Object

   Dim myTable As Object

   Dim strPath As String

   Dim i As Integer

   Set catADO = CreateObject("ADOX.Catalog")

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

   catADO.ActiveConnection = "Provider=Microsoft.ACE.OLEDB.12.0;DataSource=" & strPath

   Cells.ClearContents

   Cells(1, 1) = "數(shù)據(jù)表名"

   Cells(1, 2) = "類型"

    i= 1

   For Each myTable In catADO.Tables

       i = i + 1

       Cells(i, 1) = myTable.Name

       Cells(i, 2) = myTable.Type

   Next myTable

   Set myTable = Nothing

   Set catADO = Nothing

End Sub

代碼截圖:

代碼解讀:

Set catADO =CreateObject("ADOX.Catalog")

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

   catADO.ActiveConnection = "Provider=Microsoft.ACE.OLEDB.12.0;DataSource=" & strPath

 創(chuàng)建一個(gè)ADOX對(duì)象,并連接到數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)含地址為:strPath =ThisWorkbook.Path & "\mydata2.accdb"

 Cells.ClearContents

  Cells(1, 1) = "數(shù)據(jù)表名"

  Cells(1, 2) = "類型"

清空工作表,并在A1 B1 單元格寫(xiě)入表頭

For EachmyTable In catADO.Tables

       i = i + 1

       Cells(i, 1) = myTable.Name

       Cells(i, 2) = myTable.Type

   Next myTable

這里用了一個(gè)FOR EACH循環(huán),對(duì)對(duì)象中的每一個(gè)表進(jìn)行名稱和屬性的提取,并記錄。同時(shí)寫(xiě)道工作表中。這里用的是循環(huán)語(yǔ)句,詳細(xì)大家通過(guò)VBA的學(xué)習(xí)應(yīng)該不陌生吧?

下面我們先看看ACCESS中的表,顯示系統(tǒng)表后是什么樣子:

上面用紅色框框起來(lái)的是系統(tǒng)表。一般情況下這些系統(tǒng)表是隱藏的,讀者如果想查看,可以選擇顯示即可,關(guān)于ACCESS的設(shè)置不做詳細(xì)的解釋了。

看我們的代碼運(yùn)行結(jié)果:

今日內(nèi)容回向:

1  如何能夠把數(shù)據(jù)庫(kù)中表的名稱和屬性全部顯示出來(lái)呢?

2  是否清楚哪些是系統(tǒng)表和自己建立的表了嗎?

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
VBA數(shù)據(jù)庫(kù)解決方案第11講,如何動(dòng)態(tài)建立數(shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)表
利用VBA代碼,在數(shù)據(jù)庫(kù)中根據(jù)需要?jiǎng)討B(tài)刪除和建立數(shù)據(jù)表
如何將 Excel 的數(shù)據(jù)寫(xiě)入到 Accees?
vba 連接數(shù)據(jù)庫(kù)(vba中主要提供了3種數(shù)據(jù)庫(kù)訪問(wèn)接口)
VBA-access表信息的獲取
VBA與數(shù)據(jù)庫(kù)解決方案:Recordset記錄集合的動(dòng)態(tài)查詢,并顯示結(jié)果
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服