Access数据库培训
网站公告
·Access快速平台QQ群号:277422564    ·Access快速开发平台下载地址及教程    ·欢迎添加微信交流账号:AccessoftChu    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access数据库-模块/函数/VBA

隐藏系统中所有的查询,以确保不会被非法链接

时 间:2008-06-08 23:02:19
作 者:小魏   ID:2173  城市:青浦
摘 要:隐藏系统中所有的查询,以确保不会被非法链接,

正 文:

不好意思,上次发的这段代码有误.需要修改一下.如下:

把这段代码放入到模块中.然后在窗体事件中调用即可.  CALL YINCANGCHAXUN() 

 

Function YinCangChaXun()
On Error GoTo Err_Com1

'==========================================
'隐藏系统中所有的查询,以确保不会被非法链接,
'DoCmd.SetWarnings 0     '关闭系统提示

 

Dim db As Database
Dim i As Integer
    Set db = DBEngine.Workspaces(0).Databases(0)
   
    db.QueryDefs.Refresh
    For i = db.QueryDefs.Count - 1 To 0 Step -1
   ' MsgBox db.QueryDefs(i).Name
  
      Application.SetHiddenAttribute acQuery, db.QueryDefs(i).Name, True
       'MsgBox db.QueryDefs(i).Name
    Next i
    Set db = Nothing
    
MsgBox "当前数据库中的所有查询都已被隐藏."

 
Exit_Com1:
    Exit Function

Err_Com1:
   ' MsgBox Err.Description
    Resume Exit_Com1
' DoCmd.SetWarnings -1
End Function

 

目前这段代码在实际运行时还有点问题,就是总会去试图隐藏系统查询而不得.所以,需要关闭系统提示.否则会烦死了,哈哈.



Access软件网官方交流QQ群 (群号:163466567)       access源码网店

最新评论 查看更多评论(8)

2012/6/30 12:12:00AngelHis
If left(db.QueryDefs(i).name,3) <>"~sq" then
CurrentDb.QueryDefs(db.QueryDefs(i).name).Attributes = 1
end if
'在for语句下面加入以上代码即可避开系统查询表

2008/8/21 19:10:5254.℡80後2oO
然后在窗体事件中调用即可.  CALL YINCANGCHAXUN()  
在哪个窗体的什么事件中写代码啊?????

2008/6/21 12:58:45小魏
我有发表过一篇彻底隐藏表的方法,再结合这篇隐藏查询的方法,就可以起到保护系安全的可能了.因为这时如果有导出的方法,是看不到基本表的,但是可以看到查询,但是如果导不出基本表,那导出的查询也没有用的.因为没有数据源,查询是不能运行的.
另外一点,对于较为敏感的数据,就将查询改为SQL代码放在模块中,将重要的链接表也放在模块中,当编译成MDE的时候,这些模块是打不开的,也可以起到保护的作用.
不过,如果微软公司能够将ACCESS的这些缺陷改掉,那就太好了,不必再去花这么多的心思了.只是,不知比尔能不能体会我们的心声哦.

2008/6/21 9:55:38小宝
用隐藏的方法根本不能防止查询和表被链接,即使编译为mde也不行,只有在模块中使用Runsql的方法运行查询,才能确保安全性!实际上,微软如能修改编译为mde后所有对象均不能导出,则Access的应用将更为安全,编程将更加容易.

2008/6/19 17:38:58小魏
另外,最好是再配合下面的两个语句,将系统对象及隐藏对像的属性修改一下。
最好是将这两句放在数据库的启动窗体的加载项中,让系统每次启动时都执行一次。

Application.SetOption "Show Hidden Objects", 0

Application.SetOption "Show System Objects", 0 


发表评论您的评论将提升作者分享的动力!快来评论一下吧!

用户名:
密 码:
内 容:
 

常见问答

技术分类

相关资源

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助