我有一个使用MS Access表单开发的应用程序,该应用程序指向SQL Server数据库。表单端的连接字符串使用具有对SQL Server数据库的完全访问权限的DB用户。
我想使Access表单只读,或者说,不希望在DB端执行任何插入/更新/删除操作。
是否可以使用任何设置将整个“访问表单”菜单设置为只读?我尝试将表单设置(如“允许编辑/允许添加”设置为“否”)设置,但这不起作用。
请帮助。
谢谢
答案 0 :(得分:1)
IMO最好,最简单的方法是将MenuItem
表单设置为快照,而不是默认的动态集。
它防止对绑定数据进行任何插入/更新/删除,但允许您在未绑定控件中输入数据,例如搜索字段。
答案 1 :(得分:0)
您有几种选择。
在表单属性表的“数据”标签中,设置“允许编辑” =“否”。
在sql server上为表创建视图-除非在链接过程中选择PK,否则链接的视图不可更新。因此,链接的视图是只读的。
创建通过查询。并基于该传递查询的形式。所有PT查询都是只读的。
因此,以上是3种选择,不需要您在服务器端更改或设置权限。
答案 2 :(得分:0)
您可以使用以下方式打开表单
DoCmd.OpenForm "myform", DataMode:=acFormReadOnly, ... other required parameters
或者,您可以将表单和任何子表单的Allow Additions
,Allow Edits
和Allow Deletions
属性设置为False
。