yuk*_*ude 14 mysql database ms-access
两个用户希望共享最初使用MS Access编写的同一数据库,而不会在单个MDB文件上相互冲突.
我使用其Migration Toolkit将表从简单的MS Access数据库移动到MySQL (顺便说一下,它运行良好)并设置Access以通过ODBC链接到这些表.
到目前为止,我遇到了以下问题:
一旦数据库正在使用中,我可以期待任何其他问题吗?特别是当两个用户都在同一张桌子上工作时?
小智 16
我知道这个话题不是太新鲜,只是一些额外的解释:
如果要有效地使用MS Access,尤其是对于较大的多用户数据库,请执行以下操作:
将MDB拆分为前端应用程序和后端(仅限数据)文件 - 然后您将拥有两个单独的MDB文件.
将包含数据和结构的所有表迁移到外部数据库中.它可以是:MySQL(工作得很好,没有数据库大小限制,需要更多技能,因为它不是MS技术,但在许多情况下它是一个不错的选择 - 而且你可以用更多的RAM和额外的CPU来扩展你的后端,所以一切取决于您的需求和硬件能力); Oracle(如果您有足够的资金或某种公司许可证)或Oracle 10g XE(如果这不是问题,数据库大小限制为4 GB,它将始终使用1 GB的RAM和1个CPU), MS SQL Server 2008(在所有情况下都是一对很好的MS Access前端和MS SQL Server后端,但你必须为许可付费! - 优点是:紧密集成,两种技术都是同一个供应商; MS SQL Server很容易保持有效的同时)或Express版本(与Oracle XE一样的故事 - 几乎相同的限制).
使用后端数据库重新链接MS Access前端.如果您为后端选择了MS SQL Server,那么就可以轻松使用MS Access中的向导.对于MySQL - 你必须使用ODBC驱动程序(它很简单,效果很好).对于Oracle - 请不要使用Microsoft的ODBC驱动程序.来自Oracle的这些工作将更好地完成工作(您可以通过Oracle ODBC和MS Oracle ODBC驱动程序比较从MS Access到Oracle执行SQL查询所需的时间).此时,您将拥有可靠的数据库后端和功能齐全的MS Access前端 - MDB文件.
将您的MDB前端编译为MDE - 它将为您提供很多速度.此外,它是向最终用户分发MS Access应用程序的唯一合理形式.
对于日常工作 - 使用带有MS Access前端的MDE文件.对于进一步的MS Access前端开发,请使用MDB文件.
不要使用写得不好的ActiveX组件来增强MS Access前端功能.最好自己写或者购买合适的.
不要相信MS Access存在很多问题的神话 - 这是一个很好的产品,可以帮助可能的情况.问题是很多人认为它是一个玩具或MS Access非常简单.通常他们自己会产生很多错误和问题,而且缺乏知识和经验.要成功使用MS Access,了解此工具非常重要 - 这与任何其他技术无关,这是相同的规则.
我可以告诉你,我正在使用非常先进的MS Access前端到MySQL后端,我非常满意(作为维护此应用程序的开发人员).我的朋友们,用户也很满意,因为他们对GUI(前端),速度(MySQL)感到非常满意,他们对记录锁定或数据库性能没有任何问题.
此外,阅读很多关于良好实践和其他人的经历非常重要.我会说在许多情况下MS Access是一个很好的解决方案.我知道很多专用的定制系统,它们以私有MS Access数据库(MDB文件)的形式开始,然后演变为:拆分MS Access(MDE - 前端,MDB - 后端),最后到:MS Access前端(MDE)和"严肃"的数据库后端(主要是MS SQL Server和MySQL).同样重要的是,您始终可以将MS Access解决方案用作工作原型 - 您已准备好在数据库中使用后端(MySQL - 让我们假设)并且您可以将前端重写为您选择的技术(Web解决方案?可能是桌面C#应用 - 你需要什么!).
我希望我帮助你们中的一些人考虑使用MS Access.
此致,Wawrzyn http://dcserwis.pl
onn*_*odb 15
我有一个同样有效的应用程序:一个MS Access前端到MySQL后端.这是一个巨大的痛苦,我最终写了一个Win32前端.从头顶,我遇到了以下问题:
一种可能的替代方法是将后端(带有数据)放在共享驱动器上.我记得这也有很好的记录,也在帮助中.你可能想看看在分裂一些普遍性的建议为前端和后端和代码,自动重新连接到启动时的后端 ; 我还可以向您发送更多示例代码,或在此处发布.
否则,您可能还需要考虑MS SQL.我没有这方面的经验,但我认为它与MS Access一起使用得更好!