首页 > IT > Access   Word | Excel | Access | Powerpoint | Outlook | 其它软件
 
如何判定一个表是否存在

2008-01-03 16:19 转载 
 
 

方法一:
 
很多人问如何判定一个表是否存在于某个数据库,有人会回答,用msysobjects这个表来判定啊,这是个Access高级技巧。但是默认情况下admin对系统表没有读取权限,你需要手动设定,这该怎么办哪?要么你去设定一下权限(相关方法在本站另有动画以及文章介绍,这里不再阐述)
现在说两种方法来解决判定问题

以下这种方法就是使用陷阱,造成一个错误,通过系统错误来判定某个表是否存在
这是个少有人介绍,但是很实用的技巧。
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

方法二:
 
通过写循环读取所有表的名字来判定表是否存在

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
'调用,比如要找名字是 aaa 的表是否存在: msgbox searchTable("aaa")
'如果存在返回 True,不存在返回 False

 
 

    文章评论

  


 ·使用Access应注意的的五则技巧
 ·用RAR来备份ACCESS文件
 ·如何正确的修复Access数据库
 ·删除Access数词库中空记录的方法
 ·巧用SQL链接服务器访问远程Access数据库
 ·用ado取得表的所有字段信息
 ·如何确定有多少人登陆Access数据库?
 ·解决Access在密集运算时进入假死状态
 ·Access命令行参数
 ·VB通过DAO访问Access数据库
 ·在ACCESS中如何使用正则表达式
 ·将ACCESS转化成SQL2000要注意的问题
 ·用Access实现学校课程表的科学管理
 ·Access数据库开发技巧
 ·如何在VBA中格式化SQL字符串

版权声明:本网所转载及刊登之作品版权均归原作者所有,如有疑问或内容有侵犯您的版权,请及时与我们联系。QQ:13356921 谢谢!
Copyright © 2007-2010 Gidao.com All Rights Reserved.