设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 2401|回复: 2
打印 上一主题 下一主题

[其它] 秘技:如何保护表的内容不被修改(有补充)

[复制链接]
跳转到指定楼层
1#
发表于 2005-11-24 18:18:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如果有一个Access数据库,因为内容已固定,我想让所有用户都不能修改其内容。

实现方法当然有常用的设置权限,然而,当你作为管理员登录,默认你是有权限的,要防止误操作,真的要设那么复杂的权限吗?

办法简单:将此表设置为系统表

以下需要引用DAO

Dm DB A Database :set DB =Currentdb()
Dm Tbl As TableDef
Set Tbl = DB.TableDefs(yourtablename)
Tbl.Attributes = dbSystemObject


好了,试试你的表,不能修改了吧。
补充:设置属性后,此表的内容不能打开修改,但可以通过DAO代码修改。这样,很方便一些不允许用户直接修改的内容的管理。


以下需要引用DAO

Dm DB A Database :set DB =Currentdb()
Dm Rst As Recordset
Set Rst = DB.OpenRecordset(yourtablename, DB_OPEN_DYNASET)
Tbl.Edit
  Tbl.Fields(yourfieldname) = yourvalue
  Tbl.Update
Rst.close
DB.close



[此贴子已经被作者于2005-11-24 10:51:56编辑过]

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2005-11-24 20:19:00 | 只看该作者
出错。 管理员,Office2003,有引用DAO3.6。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
3#
发表于 2005-11-24 20:25:00 | 只看该作者
呵呵,已解决,那行"Dim DB As Database :set DB =Currentdb()"代码不能省.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-4 07:06 , Processed in 0.082028 second(s), 27 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表