【发布时间】:2017-09-05 17:51:40
【问题描述】:
环顾四周,找到了各种各样的答案,但最近没有真正比较这些选项的优缺点。所以我想我会要求社区权衡你喜欢哪条路线以及为什么。
背景
这就是我们所拥有的:
- 许多协议数据库中使用的通用 Access 模块和类集(Access 2010 *.accdb 拆分前端/后端)
- 前端链接到后端数据库表和代码(链接数据库)
- 后端包含协议特定的数据和代码
- 公共模块/类数据库不应由用户直接编辑
已知
插件和数据库参考数据库:
- 每次更改时都需要重新分发(即使其中没有更改任何代码)。
- 必须在他们的 IDE 与协议数据库的 IDE 中进行编辑(否则您将丢失所做的编辑,因为该 db 不是通用代码)
问题
公共模块/类数据库应该如何连接到协议数据库?
- 链接数据库就像后端一样
- 将其作为参考附加到 IDE(工具 > 参考)
- 创建加载项并将其添加为参考
你会怎么做?为什么?
有什么优点/缺点?
哪个选项可以最大限度地提高性能?
【问题讨论】:
-
这个问题肯定会引起自以为是的答案,因为没有“黄金标准”,而且很大程度上取决于您在做什么。我自己有一个链接数据库设置,我正在使用自动化将模块推送到前端。如果您想阻止用户编辑您的课程模块,您可以锁定它们以供查看并在完成后使用密码保护它们(注意:不是真正安全的,但也不是链接它并将其添加为参考)。
-
Erik,感谢您的评论 - 实际上,我很乐意接受固执己见的答案 - 我们都有自己的发展趋势;)您能否放大或添加一个链接来说明您的情况做自动化推送?
-
这样的问题在 StackOverflow 上是题外话。使用的一些代码可以在this answer 中找到(删除代码以创建新文件,以及您不想推送的任何对象的代码)。在我的设置中,我实际上使用了一个表单,该表单列出了文件夹中的所有前端以及所有表、查询、表单、模块等,它允许我选择要推送的内容。如果这个问题明天仍然存在,我可能会分享完整的代码(然后有更多时间)。
-
谢谢埃里克。查看提到的代码,所引用的“推送”更多地将模块/类放入前端,这并不是我想要的,但我愿意看看你如何使用它。我可能会发现它实际上比我想象的要好 - 我试图解决的根本问题是公共代码的扩散,因此是公共数据库。
-
没有足够的空间最后注:我不同意这个问题属于“离题”(stackoverflow.com/help/on-topic)的想法。虽然是主观的,但希望那些具有真实经验的回答足够详细,以使问题具有价值,这里的“良好主观”线程:stackoverflow.blog/2010/09/29/good-subjective-bad-subjective 实际上,对于许多开发问题有不同的解决方案。在这种情况下,只需尝试确定哪个是最好的给定约束和其他人的经验。我可以做任何一个,但有些会是更好的选择。干杯!