用SQL查找Access数据库中某一表是否存在的一种方法

时间:2021-03-28 05:04:16

Access数据库虽然功能单一,但的确是一个小巧精干的开发伙伴,我在多个项目中与它见面,为了探知Access数据库的本源,今天上网查了些资料。现总结归纳如下:

      在Access数据库中通过SQL语句找到某一表是否存在的确是一件困难的事。幸好, Access本身就有一些隐含的数据对象能够保存你库中的信息,今天我就遇到了要用SQL,通过程序查询某一表是否存在的问题,解决方法如下:

  1. 由于Access数据库本身的“管理员”组没有访问隐含对象的权限,因此先要:工具 -> 选项 -> 视图 -> 隐藏对象、系统对象,前面的勾选上。
  2. 然后,工具 -> 安全 -> 用户与组的权限,在对象名称中选定 MSysObjects(我只用到这个对象,如果需要用到其它的,可以再选) ,然后权限中设置“读取数据”权限。
  3. 最后,保存设置,在程序中就可以通过SQL语句查询表是否存在了,语句如下:

           SELECT Count(*) AS RTab FROM MSysObjects WHERE (((MSysObjects.Name) Like "需判断的已知表名"));

    返回1为存在, 0为不存在

系统环境:Win2000  Access2000