是否存在任何基于文件的数据库,其并发的每个文件用户访问权限类似于MS Access但开源?

时间:2011-03-17 17:11:52

标签: java sql database ms-access open-source

大多数时候,我构建了通过网络驱动器通过MS Access DB共享数据的简单应用程序。

但是,MS Access速度慢,不支持SQL的常见功能,自动化很麻烦,并且可以直接“探索”我的应用程序数据。

我想迁移到具有类似配置文件的其他数据库。它应该是

  • 无需安装,因为不允许通过IT部门进行安装
  • 基于文件(与上述相同)
  • 可以放置在网络驱动器上以提供多用户支持
  • 开源
  • (最好有一个纯java驱动程序)

你知道那里至少与我的一些creterias匹配吗?

我查看了sqlite,derby,hsqldb。除了通过网络驱动器的可共享性外,它们似乎都支持所有要求。

但这是最需要的功能。

我很感激任何答案。

3 个答案:

答案 0 :(得分:3)

我很确定“不需要安装”的要求对你来说是一个显示器。另一种方法是学习更好地利用Access。通过精心设计,会让您感到惊讶。在过去,当美国的律师被要求设计,建立和维护他们自己的诉讼支持数据库时,我曾经演示过针对2,000,000行Access数据库的设计和查询。响应时间小于250毫秒。我知道现在听起来非常缓慢,但当时 - 上世纪90年代初 - 这种情况正在迅速发展。

不要开玩笑说律师。当时canonical reference for litigation support databases是诉讼支持数据库 Wilmer,Cutler和Pickering手册。根据我的经验,大多数律师认为他们在酒吧的专业知识转移到所有其他领域。包括数据库设计。

答案 1 :(得分:1)

尝试HSQLDB

从他们的主页:

  

它提供了一个小型,快速的多线程和事务数据库引擎,它提供了内存和基于磁盘的表,并支持嵌入式和服务器模式。

它也被JBoss AS用作其内部数据库。

  

我查看了sqlite,derby,hsqldb。除了通过网络驱动器的可共享性外,它们似乎都支持所有要求。

您可能需要在网络上放置一个小型服务器,但是:)

答案 2 :(得分:0)

我使用Firebird Embedded获得了很好的结果,这是唯一的问题:没有多用户访问是可行的。

  • 它为您提供了完整的现代RDBMS功能。
  • 无需安装:只需复制一个dll。
  • 数据库是单个文件。

以下是一些信息:http://www.firebirdsql.org/manual/ufb-cs-embedded.html