打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Access:如何枚举表名和字段名

Access:如何枚举表名和字段名

2011-10-21  Tech            

一、枚举表名

SQL语句: SELECT [NAME] FROM [MSysObjects] WHERE Type=1 AND Flags=0 Order By [Name]

其中[MSysObjects]为系统表之一,[Name]为表名,默认情况下是无法直接访问access的系统表的,会提示没有权限,只有手工设置了读权限后才可以。

1. 打开Access

2. 点击“工具”菜单,选择“选项”

3. 在“视图”页上,将“系统对象”勾上

4. 点击“确定”按钮保存设置

5. 点击“工具”菜单,选择“安全”中的“用户与组权限”

6. 选择“权限”页

7. 在“对象类型”下拉列表中选择“表”

8. 在“用户名/组名”中选择“管理员”用户

9. 在“对象名称”中选择“MSysObjects”表

10. 在“权限”中将“读取数据”勾上

11. 点击“确定”按钮保存设置

枚举表名

 select name from msysobjects where  type=1 and flags=0

二、枚举列名

1
2
3
4
5
Set Rs = Conn.Execute("Select * From [TableName]")
For Count=0 to Rs.Fields.Count-1
    Response.Write Rs.Fields(Count).Name
Next
Rs.Close:Set Rs=nothing

三、其他应用

隐藏表:

既然可以显示出来系统表,那么就可以隐藏系统和普通表

我见过不少程序将注册信息存贮在表内然后隐藏以防止注册信息被找到和破解

初步猜测是设定某个普通表的属性为系统表,但是权限保留,即:不可见但可读写

有兴趣的话可以去尝试一下,这不是本文重点,所以就不尝试了。


本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
不能读取记录;在MSysObjects上没有读取数据权限
VB程序实现删除Access的多个表
如何查询一个Access数据库中有多少表
请问如何用查询语句获取Access中所有表的表名
获取ACCESS数据库中的表名/窗体/报表/模块/查询/宏
三个access查询实用技巧
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服