哪个单文件嵌入式数据库用于网络项目?

Posted

技术标签:

【中文标题】哪个单文件嵌入式数据库用于网络项目?【英文标题】:Which single file embedded DB for a network project? 【发布时间】:2010-12-12 09:32:10 【问题描述】:

我正在为通过网络运行的 VB 2010 应用程序寻找嵌入式数据库。数据库文件位于 NAS 服务器 (NTFS) 上的共享网络文件夹中。由于这个原因,我不能使用任何服务器数据库,如 mysql、sql server 等......

网络上有近20台PC访问共享文件夹。 每台电脑最多可以打开 3 个与数据库的连接,因此我们最多可以有 60 个与数据库的连接。大多数情况下,他们只是读取数据库,每 5-6 分钟写入一次数据库,很少同时发生,但也有可能发生。

过去我曾成功地将 access+jet 用于此类应用程序,并且从未遇到过问题,无论如何网络用户较少。

我仍然会使用 access+jet(所以我不需要转换整个数据库和代码),但我想使用更新的东西。

我发现 SQLite 不适用于网络/共享环境。 SQL Compact 也不适合共享文件夹。 VistaDB 太贵了。 Firebird 可能是一种选择,但我没有经验:它应该在生产系统中使用,我不知道我是否可以信任它。

有什么建议吗?还是shell我留在访问?

感谢您的回复。

【问题讨论】:

为什么“更新”是改变的理由?就此而言,如果您想要“更新”,请尝试与 A2010 一起发布的当前版本的 Jet/ACE,它提供 64 位版本,并具有大量出色的功能(例如,触发器等价物) )。另外,我不知道为什么使用 Jet/ACE 后端,您会希望为每个用户打开多个连接。 Jet/ACE 更好地为每个用户提供一个简单的重复使用的连接(因为 LDB 锁定文件开销)。 【参考方案1】:

与火鸟一起去。作为网络和嵌入式数据库,稳定、轻量、免费且速度非常快。我到处都在使用它。 但是,数据库不能驻留在共享网络文件夹中。它必须位于与主机物理连接的硬盘驱动器上。

VistaDB 作为嵌入式数据库很好,但作为网络数据库性能很差,因为它不是真正的客户端-服务器。

【讨论】:

不幸的是,第一段排除了任何基于服务器的解决方案。

以上是关于哪个单文件嵌入式数据库用于网络项目?的主要内容,如果未能解决你的问题,请参考以下文章

三种方法,让WPF项目生成单文件

嵌入式:Load/Store之单寄存器的存取指令

Firebird 是适用于 ASP.NET 的良好嵌入式数据库吗?还有哪个?

C# 的跨平台嵌入式数据库/键值存储

我用于java离线应用程序的数据库[关闭]

03-操作系统的发展和分类(手工单道/多道批处理分时实时网络分布式嵌入式个人计算机)