office交流網(wǎng)--QQ交流群號(hào)及微信交流群

Access培訓(xùn)群:792054000         Excel免費(fèi)交流群群:686050929          Outlook交流群:221378704    

Word交流群:218156588             PPT交流群:324131555

微信交流群(請(qǐng)用微信掃碼)

        

Access判斷數(shù)據(jù)表是否存在

2017-11-16 16:05:00
cg1
轉(zhuǎn)貼
10552

表是數(shù)據(jù)庫(kù)最重要的東西,有時(shí)候因?yàn)槌绦虻男枰瑫?huì)把表隱藏(Access徹底隱藏表顯示表。直觀上也許我們不能馬上發(fā)現(xiàn)。

那么我們?nèi)绾闻卸ㄒ粋€(gè)表是否存在于某個(gè)數(shù)據(jù)庫(kù)?這里我們介紹兩個(gè)方法


方法一:

'通過(guò)寫循環(huán)讀取所有表的名字來(lái)判定表是否存在
Function searchTable(TableName As String) As Boolean
    searchTable = False
    Dim tbl As DAO.TableDef
    For Each tbl In CurrentDb.TableDefs
        If tbl.Name = TableName Then
            searchTable = True
            Exit For
        End If
    Next
End Function

'調(diào)用,如要判斷表名為“表2”的表是否存在: msgbox searchTable("表2")
'如果存在返回 True,不存在返回 False


方法二:
這種方法就是使用陷阱,造成一個(gè)錯(cuò)誤,通過(guò)系統(tǒng)錯(cuò)誤來(lái)判定某個(gè)表是否存在
這是個(gè)少有人介紹,但是很實(shí)用的技巧。

Function test()
    MsgBox TableIsIn("表2")
End Function
Function TableIsIn(TableName As String)
    TableIsIn = True
    On Error Resume Next
    Dim strSQL As String
    strSQL = "select * from " & TableName
    CurrentDb.Execute strSQL
    If Err.Number = 3078 Then
        TableIsIn = False
    End If
    
End Function


    分享
    文章分類
    聯(lián)系我們
    聯(lián)系人: 王先生
    Email: 18449932@qq.com
    QQ: 18449932
    微博: officecn01
    移動(dòng)訪問