多数据库连接与DataSnap技术全解析
本地数据库连接与组件架构
在多层应用中,若客户端和服务器位于同一可执行文件内,合理利用数据提供者(provider)能带来诸多便利。为便于后续将服务器迁移至独立应用,建议将服务器端组件和客户端组件分别置于不同的数据模块中,应用结构如下:
- 服务器数据模块 :包含数据库连接、必要的数据集和数据提供者。
- 客户端数据模块 :包含客户端数据集和(可选)数据源。
- 窗体和单元 :应用中的窗体和支持单元将引用客户端数据模块中的数据。
除服务器数据模块内部外,不应引用服务器端的任何组件,包括数据库连接或数据集,所有数据访问都应通过客户端数据模块进行,这样能简化服务器数据模块迁移至独立应用的过程。
不同窗体上的数据提供者使用
将数据访问组件和数据提供者移至单独的数据模块后,客户端数据集无法直接连接到数据集提供者。此时,可在运行时调用 TClientDataSet.SetProvider
方法来建立与不同窗体或数据模块上的提供者的连接,示例代码如下:
ClientDataSet1.SetProvider(ServerDM.pvContacts);
TSQLClientDataSet组件分析
TSQLClientDataSet
组件将 TSQLDataSet