同时使用Excel作为前端访问数据库 - 可行吗?

sim*_*mon 7 database excel frontend

假设您有一个包含大约200,000行的最大表的数据库,并且经常被修改.客户端希望Excel通过ODBC连接到数据库,并作为前端来管理数据.数据最多可同时由多达25个用户修改.

我的第一直觉是推荐其他东西,例如网络前端.但是假设客户坚持使用Excel解决方案,您认为它是否可行,您会看到哪些陷阱?

我的怀疑是:

  1. 数据完整性(如何管理用户同时修改相同数据)
  2. 大量数据不必要地移动(打开Excel工作簿时,我想必须传输整个数据库)
  3. 安全性(以安全的方式向适当的用户显示部分数据将具有挑战性 - 请参阅前一点)
  4. 使用工具(Excel)的东西,它不擅长(原谅双关语)

Dic*_*ika 5

我一直这样做.不,你不必带入整个数据库甚至整个表.我使用ADO和VBA并通过Command对象发送SQL语句.例如,我有一个带有Excel前端的版税数据库.

用户键入发票号,SELECT语句检索该记录并填充一些自定义类.用户输入/修改一些数据并单击"保存".然后该类有一个方法,根据情况使用和UPDATE或INSERT将记录写回数据库.

在月末,用户输入日期范围并将一些记录检索到报告中,再次只是填充某些类并输出到工作表的SELECT语句.

使用事务,以便在遇到任何记录锁定问题时可以回滚,但有25个用户可能不会.