2013-04-06 102 views
0

家伙我有我的项目基于java swing。它基本上就像通过内部网共享信息,用户之间通过无线/有线相连。数据库位于网络驱动器上。所有机器都安装了该应用程序。每个人都可以执行数据库。我有以下问题:限制开放网络驱动器


  1. 每个人都能够在网络驱动器查看文件夹(包括数据库)。如何设置权限,以便应用程序能够访问数据库,但用户无法查看网络驱动器文件夹。

  2. 如果有人试图同时执行数据库,则会引发SQL错误。如何处理?如果发现这种异常,我应该延迟一些吗?

PS-正在使用MS访问

迫切需要帮助.. 在此先感谢家伙..将是很大的帮助...! :)

+3

使用多用户准备好的数据库。 – Markus 2013-04-06 06:24:57

+0

以及如何设置权限? – 2013-04-06 07:07:30

+1

更好地使用像MySQL或PostgreSQL这样的数据库服务器,甚至更好,支持类似JSON的Web访问层 – MadProgrammer 2013-04-06 07:18:24

回答

1

每个人都可以查看网络驱动器中的文件夹(包括数据库)。如何设置权限,以便应用程序能够访问数据库,但用户无法查看网络驱动器文件夹。

如果人们打算访问网络驱动器上的共享.accdb或.mdb文件,那么显然他们必须能够“看见”它并“读取”它。如果他们需要能够更新该数据库,那么他们也需要在该文件上“写入”权限。

另请注意,共享的Jet/ACE的数据库文件中,对于多用户访问的正常工作所有用户必须对文件夹在其中共享文件所在Create File权限。这是因为他们需要能够在该文件夹中创建锁定文件(.laccdb或.ldb)。 (如需更详细的说明,请参见我其他的答案here

至于限制对所有网络共享的其他文件和文件夹的访问,这是设置在服务器上的这些对象相应权限的问题。如果他们只需打开资源管理器窗口并以这种方式浏览网络共享,就无法摆脱应用程序代码来尝试限制访问。

如果有人试图同时执行数据库,则会引发SQL错误。如何处理?

请编辑您的问题,让我们知道错误实际上是说