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

Access培訓群:792054000         Excel免費交流群群:686050929          Outlook交流群:221378704    

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

微信交流群(請用微信掃碼)

        

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

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

表是數(shù)據(jù)庫最重要的東西,有時候因為程序的需要,會把表隱藏(Access徹底隱藏表顯示表。直觀上也許我們不能馬上發(fā)現(xiàn)。

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


方法一:

'通過寫循環(huán)讀取所有表的名字來判定表是否存在
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


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

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
    移動訪問