ADO连接一个或四个?

时间:2013-01-18 11:58:52

标签: delphi ms-access delphi-xe2 ado

我正在尝试连接到mdb(访问2000)我的应用程序有1个主屏幕,有4个按钮。每个按钮都会打开一个新表格。

我需要在所有4个子表单上访问此数据库,我是否必须为每个表单添加ADOConnection?我可以在主窗体上建立连接吗?或者还有更好的方法吗?

2 个答案:

答案 0 :(得分:7)

您只需要一个可以在所有表​​单中使用的ADOConnection。共享该连接的最简单方法是创建一个数据模块,将ADOConnection置于其上,然后使用所有表单中的数据模块及其连接。确保在表单之前创建了数据模块。

您还可以将查询和表组件放在一个或多个数据模块上。我发现它有助于促进UI数据访问之间的分离,但这完全取决于您。

多个连接的唯一原因是从多个线程访问数据库时。在这种情况下,您需要为每个访问数据库的线程提供一个连接。您正在从主线程执行所有操作,因此只需要一个连接。

答案 1 :(得分:1)

您必须为应用程序使用唯一的TADOCOnnection(提供所有表单)。 每个表单都可以使用TADOQueryTADOTable,...与主要连接。

没有理由使用4个连接(TADOConnection)。