关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。
想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。
1年前关闭。
Improve this question
我是一名 Java EE 开发人员,刚刚有人联系我,他希望我为他的业务应用程序提供报价,该应用程序可以与他们的 MS Access“后端”集成。
我希望发布这篇文章,只是获得有关 MS Access 编程最佳实践的一般高级概述。我假设该程序将完全在 VB 中,但不知道我是否可以选择在 VB.NET 或(最好)C# 中编写一些东西。
另外,我鄙视表示层:Access 应用程序有什么好的 GUI 构建器吗?
MS Access 程序员经常使用哪些常用工具和 API(单元测试框架、构建自动化系统等)?
您会推荐任何链接或资源吗?
这听起来像是一个非常简单的应用程序:获取输入的数据,将其与一些表格进行比较,然后将一些输出输出到屏幕上。我是一个相当不错的程序员,所以即使我从来没有做过 Access 程序,我也不会太难上手。
感谢您的任何想法或建议!
最佳答案
作为前端 Access
好吧,人们对 Access 有强烈的感觉。负面观点的主要原因是它被非开发人员广泛使用,他们没有适当的数据库开发概念,最终得到这些几乎无法工作、设计糟糕的应用程序,让开发人员感到恐惧。
话虽如此,Access 只不过是一种入门阈值非常低的快速应用程序开发工具。
好与坏
Access 是一个相当古老的产品线,跨越近 20 年。许多人反对 Access 作为一项技术的原因在于其早期历史:由于 Microsoft 认为向后兼容性很重要,因此 Access 多年来保留了其大部分功能,无论好坏。
您可以看到选择 VBA、非 winform 形式、通过 OOP 提升模块是糟糕的选择,但这些早期设计决策的连续性使 Access 成为一个稳定的平台。
可靠性
大多数反对意见,尤其是关于可靠性的反对意见,根本不再正确。
一个精心设计的Access Application 可以支持几十个并发用户。我有一个规模不错的应用程序,为一家拥有 150 个用户的制造公司管理采购/库存/质量/零件/项目,其中通常有 50 个在任何给定时间连接。我多年来没有任何腐败。
当然,您必须始终牢记 Access 是一个基于文件的多用户数据库,因此您不能指望它在网络不可靠或速度缓慢的环境中毫无风险地工作,并且通过 WiFi 连接到 Access 后端确实需要麻烦,就像您也不会通过无线处理大型 Excel 文件一样。
维护是应用程序生命周期的一部分。预防性维护非常重要。
不要等待出现问题:在您的应用程序中构建一些管理工具,以帮助检查您的数据状态(确保所有内容一致,检测无效的用户输入等)。
还要定期压缩数据库(作为后端服务器上日常自动化任务的一部分进行备份后,我每晚都进行压缩)。
一些随机提示
有很多方法可以做到这一点。我开发了自己的,但你可以使用 ClickOnce或 Tony Toews的 Auto-Front-End Updater
作为后端数据库 Access
现在,如果您想使用用其他东西编写的前端,比如 C#,使用 Jet/ACE 驱动程序连接到 Access 后端数据库相当容易。
.mdb
文件。 Windows 中默认安装了 32 位驱动程序(在 Win8 中仍然存在)并且始终可以依赖。 .accdb
Access2007/2010/2013 使用的格式。与旧版本相比,它增加了限制和增强功能,但它仍然可以与 .mdb
通信。 .您必须安装 Microsoft Database Engine在所有客户端上(如果已经安装了完整版本或 Access 2007/2010/2013 运行时,则不需要)。
同样,不要在 64 位模式下构建您的 C++/C#/Java/Python 前端应用程序,并期望 32 位 ACE 驱动程序能够工作。将所有内容保持在 32 位,让一切正常运行,然后在您确实需要时测试 64 位版本。
关于ms-access - MS Access 编程概述,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6391316/