相关疑难解决方法(0)

为什么不推荐使用一个公共OleDbConnection?替代解决错误:打开了太多连接

我必须使用另一个开发人员制作的项目.一个带有Visual-Basic代码的Win-Form项目,MS-Access为db和一些OleDbConnections.有一个错误:有时应用程序无法打开OleDbConnection,因为已在db上达到最大连接数.我知道使用连接的最佳方法是:

Using cn As New OleDbConnction(s)
  ...
  cn.Close()
End Using
Run Code Online (Sandbox Code Playgroud)

但是在项目中有许多类可以使用db,在许多这些类中,OleDbConnections具有"Friend"可见性,可以在不同的时间打开和关闭.因此,将所有OleDbConnections放入Using构造中是不可能的,并且很难找到哪些操作"忘记​​"关闭其中一个OleDbConnection.

一个可能的解决方案可能是只使用一个唯一的公共OleDbConnection,并在打开之前检查它是否尚未打开.但有人告诉我这是一个非常糟糕的做法.我想他告诉我有关表演的事情,但我完全不知道.你能告诉我为什么一个独特的公共OleDbConnection被弃用了吗?对我来说,对于我的问题,你有一个"简单"的解决方案吗?谢谢你,Pileggi

vb.net ms-access oledbconnection

6
推荐指数
1
解决办法
2056
查看次数

MS Access 前端:有哪些风险?

我正在考虑为 Oracle 数据库构建 MS Access 前端。

我不是开发人员(我是公共工程人员),但我确实了解 MS Access 和 Oracle。用户数量将是 5,可能会增长到 10-20。前端主要是报告,具有用于数据输入的奇怪形式。安全不是主要问题;由数据库处理,信息不敏感。

我知道 MS Access 项目往往最终成为灾难性的怪物。据我所知,MS Access 并不是一个企业系统。

然而我正在考虑它,因为,好吧,我没有任何其他选择。我不是 IT 部门的,我的 IT 部门根本没有资源可以提供帮助。在我的组织中,一个合适的、企业的、开箱即用的系统需要 5 到 10 年的时间。我等不了那么久了。相反,我可以使用 MS Access。

我希望如果我坚持一些关键原则,前端不会最终成为一个脆弱的、灾难性的怪物,而是一个可持续和强大的系统。

我希望:

  • 让它尽可能简单。如果功能不是绝对必要的,那么就不要实现它。迫使利益相关者证明他们的要求是合理的。
  • 仅将其视为原型,而不是正式的企业系统。让所有利益相关者郑重宣誓最终将其迁移到适当的企业系统中。
  • 配置,不要自定义。仅将自定义 (VBA) 作为绝对的最后手段。即便如此,在诉诸定制之前,请考虑不做任何事情。我这样说,因为我是办公室里唯一一个知道如何编写脚本的人,而且我什至不擅长脚本。
  • 定期举行“消防演习”。如果它坏了,而我不在身边帮忙,会发生什么?定期举行培训/知识共享会议,向同事介绍该系统。
  • 照料系统就像照料花园一样。保持领先地位。通过使其更简单、更高效并删除不必要的功能来不断改进它。

尽管如此,即使我设法做这些事情,我猜仍然存在与在 MS Access 中制作企业系统相关的问题。

与企业 MS Access 前端相关的风险和固有问题是什么?

oracle ms-access frontend project-management

2
推荐指数
1
解决办法
3581
查看次数