Office中国论坛/Access中国论坛

标题: 秘技:如何保护表的内容不被修改(有补充) [打印本页]

作者: j13583    时间: 2005-11-24 18:18
标题: 秘技:如何保护表的内容不被修改(有补充)
如果有一个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编辑过]


作者: 方漠    时间: 2005-11-24 20:19
出错。 管理员,Office2003,有引用DAO3.6。 [attach]14364[/attach]

作者: 方漠    时间: 2005-11-24 20:25
呵呵,已解决,那行"Dim DB As Database :set DB =Currentdb()"代码不能省.





欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3