2011-05-29 118 views
1

我们有一个使用MySQL数据库的在线购物车,并希望使用Access 2007通过链接表连接到数据库来创建各种自定义报告。不需要写入权限。ODBC连接对MySQL数据库有什么影响

我目前正在使用旧的MySQL数据库进行测试,并使用全开放的ODBC DSN连接。要编写报告和查询,我需要完全访问数据库,如果我关闭了连接,Access抱怨,并且我无法获得任何表格信息,如预期的那样。

解决方法是复制活动生产数据库并对其进行所有开发,然后将DSN切换到活动数据库并打开并关闭每个报表/查询的连接。

我的整体问题是:开发/生产数据库方法是否必要?活动购物车MySQL数据库上的持续打开的连接有哪些问题(如果有)?

= Alan R.

回答

1

连接不是线程安全的。让多个用户共享连接听起来像是在向我求助。

数据库对它们可以接受的同时连接数有限制。并发用户给开发人员增加了额外的负担,以指定事务之间适当的隔离。您需要平衡响应与准确性;对隔离和ACID进行一些研究。

如果您必须保持连接打开,扩展到更多用户的唯一方法是复制数据库。这引起了自己的头疼,以确保数据在所有实例之间同步。

只要您必须打开连接,执行操作并关闭连接,您应该保持连接处于打开状态。

购物车的情况是一个有趣的。而不是始终保持连接的开放,另一种方法是中间层建立会话并在中间层建立事务。只有当完整的交易完成并且用户点击“购买”按钮时才坚持数据库。

+0

Duffmo - 我不认为我清楚地解释了我的情况。 – Harrzack 2011-05-29 17:15:38

+0

对购物车数据库的访问完全在购物车的日常功能之外。它仅用于在数据库上创建自定义报告。将有一个Access应用程序设置为使用购物车数据库作为链接表。在报告开发期间,我需要一个开放的连接,但是报告运行时我可以打开/关闭它。 – Harrzack 2011-05-29 17:24:08