我有一个MS Access数据库,除少数用户外,所有用户都在同一个组中。我不需要限制用户的某些对象。相反,我需要赋予当前用户只对他的记录及其相关记录的写入能力,以及对所有其他记录的只读功能。这个是可能的吗?
发布于 2015-02-08 03:12:27
不幸的是,无论是Access、SQL server还是Oracle,对单个用户的行限制都不是内置的。这意味着您必须构建某种类型的界面,在其中获取/使用登录ID的用户(他们的网络pc id,或输入用户+密码的提示)。然后,当表单加载时,必须将记录限制在给定的用户身上。有许多方法可以做到这一点,它们都是过滤或限制数据的标准方法。但是,“您”必须构建此类代码并将其写入表单中。您也许可以使用一个表达式(VBA或宏TempVars)将返回给给定用户的记录限制在查询的基础上。
因此,您必须对大多数数据库进行“烹饪”和“编码”。因此,您还需要编写代码来“保存”创建记录的用户名。正如前面所指出的,当希望将数据限制在单个行时,大多数系统都需要这样的编码要求,而且数据库系统中通常没有内置这些特性。您还可能需要限制和阻止用户打开数据库并查看表视图。
https://stackoverflow.com/questions/28376759
复制相似问题