记录可以被“锁定”吗?在 Microsoft Access 应用程序中
我想使用 Microsoft Access 设计一个数据库应用程序。在开始之前,我想确保 Access 中提供了一些重要功能。
在多用户环境中,数据库是否可以由不同用户同时访问,以便仅根据需要锁定/解锁单个记录?
Access 是否需要“打开”,或者是否可以设计一个“前端”,以便用户只能看到菜单、菜单栏、选项卡、数据屏幕等?
是否可以锁定数据库设计功能,以便用户无法更改任何数据库功能?
感谢您的帮助。 AF
I would like to design a database application using Microsoft Access. Before I start there are some important features I want to make sure are available in Access.
In a multi-user environment can the database be accessed simultaneously by different users such that only individual records are locked/unlocked as necessary?
Does Access need to be "opened" or can a "front end" be designed so the user only sees menus, menu bars, tabs, data screens, etc?
Can the database design features be locked so the user cannot change any database features?
Thank you for your help.
AF
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
是的,某些记录可以被锁定。
例如,如果您使用 ADO Recordset:
recordset.Open Source、ActiveConnection、CursorType、LockType、Options
LockType 定义用于所选查询
Source
的锁定机制。有关详细信息:http://msdn。 microsoft.com/en-us/library/ms675544%28v=vs.85%29.aspx
通常,您将数据库分为前端和后端。后端仅包含表,其余部分进入前端。然后后端表链接到前端。以下链接解释了如何执行此操作: http://www.fmsinc.com/MicrosoftAccess/DatabaseSplitter/
在前端文件中可以进行编译,这样前端用户就无法编辑源码了。
Yes, certain records can be locked.
For Example, if you work with an ADO Recordset:
recordset.Open Source, ActiveConnection, CursorType, LockType, Options
LockType defines the locking-mechanism used for the selected Query
Source
.More Information on that: http://msdn.microsoft.com/en-us/library/ms675544%28v=vs.85%29.aspx
Usually you split your Database into an frontend and backend. The back-end only contains only the tables, the rest goes in to the frontend. The backend tables are then linked to the frontend. Here is a link explaining how to do that: http://www.fmsinc.com/MicrosoftAccess/DatabaseSplitter/
In the frontend file can be compiled, so that the frontend users cannot edit sources.
在回答您最初的第三个问题时,请注意,Microsoft Access 提供了将 Access 数据库转换为可执行文件(文件扩展名为“accde”)的功能,您的表单、报告、代码和宏在很大程度上受到保护。但是对表提供的保护级别较低,因为即使在 accde 中也可以直接访问表,并且 MS Access 还免费提供运行时版本,并且不会将其部署限制为您可能需要的用户数量。不再提供用户级安全性。因此,您必须插入自己的设计和代码来对不同类别的用户施加访问限制,或者,要使用用户级安全功能,必须在 Access 的早期版本中开发应用程序。此功能可用,然后使用最新版本对其进行转换,我不确定 MS Access 2013 是否会接受这样的数据库,但了解 MS 2010 在其中创建新数据库时不会提供该功能。
In response to the third of your initial questions please note that Microsoft Access offers the facility to convert an Access database to an executable file (having file extension "accde" where your forms, reports, code and macros are protected to a substantial extent. However the level of protection offered with regard to tables is low in that the same are directly accessible even in an accde. MS Access also offers the runtime version free of charge and does not restrict its deployment to as many users as you may require. It no longer offers user-level security. This feature has been replaced with an encrypted password feature. Thus you will have to insert your own design and code to impose access restrictions on different categories of users. Alternatively, to use the user level security feature, one has to develop his application in an earlier version of Access in which this feature was available and thereafter use a recent version to convert it. I am uncertain whether MS Access 2013 will entertain such a database but understand that MS 2010 will though it will not offer that feature when you create a new database inside it.
您可以免费获得 SQL Express,它是 SQL Server 的精简版本。它将更好地处理多个用户访问,并且不会出现 Access 带来的膨胀/性能下降问题。
学习曲线会稍高一些,但如果您想踏入开发领域,学习如何使用 SQL Server 会比学习 Access 更好。
You can get SQL Express for free, it's a stripped down version of SQL Server. It will handle multiple user access significantly better and not come with the bloat/performance degredation issues that Access brings along.
There will be a slightly higher learning curve, but if you're looking to get your foot into the development world's door, you'll be much better off learning how to work with SQL Server than Access.