Ms access Microsoft Jet的64位替代方案
微软选择不发布64位版本的Jet,这是他们用于Access的数据库驱动程序。有人知道一个好的选择吗 以下是Jet支持的我需要的特定功能:Ms access Microsoft Jet的64位替代方案,ms-access,64-bit,Ms Access,64 Bit,微软选择不发布64位版本的Jet,这是他们用于Access的数据库驱动程序。有人知道一个好的选择吗 以下是Jet支持的我需要的特定功能: 多个用户可以通过网络连接到数据库 用户可以使用Windows资源管理器在数据库打开时复制数据库,而不会有损坏的风险。Access目前以足够的可靠性满足客户的需求 在C++中运行良好,不需要.NET./LI> 我认为不可行的备选方案(尽管我的理解可能不正确): SQLite:如果多个用户通过网络连接到数据库,它将被损坏 Firebird:复制正在使用的数据
- 多个用户可以通过网络连接到数据库
- 用户可以使用Windows资源管理器在数据库打开时复制数据库,而不会有损坏的风险。Access目前以足够的可靠性满足客户的需求
- 在C++中运行良好,不需要.NET./LI>
- SQLite:如果多个用户通过网络连接到数据库,它将被损坏
- Firebird:复制正在使用的数据库可能会损坏原始数据库
- SQL Server:正在使用的文件已锁定,无法复制
- VistaDB:这似乎是特定于.Net的
- 以32位编译并使用WOW64:还有一个依赖项要求我们以64位编译,即使我们不使用任何64位功能
另一种方法是自动备份和恢复到漫游计算机,但这离仅仅获取文件副本还有很长的路要走。另一种方法是SQL Server Compact Edition(CE)。我相信这有64位二进制文件 我也同意Orion和Kev关于复制数据库的意见。
- 用户可以在数据库打开时复制它,而不会有损坏的风险
您不能对任何具有多个用户和/或进程的数据库文件进行修改。我要做的是创建一个单独的32位可执行文件,连接到Jet,我的64位应用程序可以通过COM与之通信
这满足了我“像喷气机一样工作”的一般要求,因为它是喷气式的。我的客户没有得到64位的好处,但其他要求更为重要。幸运的是,过去两年情况发生了变化:
由于Office2010是64位版本,微软不得不为他们的Jet引擎创建一个64位版本。根据,包含一个64位驱动程序,可以访问Microsoft access数据库格式的最新版本。复制要求的动机是什么?如果您的应用程序不需要任何64位功能,您可以为x86编译,然后所有jet提供程序都可以工作。难以置信!人们都急于发布答案!例如,我不明白“复制数据库”是什么意思:复制表?记录?为何用户将如何处理它们?用户是否会在再次“复制数据库”之前更新这些内容?请说得更清楚。@Philippe:请阅读“用户可以在数据库打开时使用Windows资源管理器复制数据库…”这个问题。通过Windows资源管理器或任何其他方法复制Jet数据库,除了Jet本身,都不是一个好主意。它可能会在99%的时间内工作,但其他1%的时间会给您带来损坏或不一致的结果。您不能使用动态附加的.mdf文件,多个用户分布在不同的位置。您是否阅读了原始要求?SQL Express不符合复制要求。当然,杰特也没有。@david.w.fenton:你真的读了我所有的答案,看到了关于“交易破坏者”的部分吗?