midas+ado

mchwy 2003-10-20 02:55:40
我在将一个原来的两层结构的系统升级到三层应用时,遇到的第一个关键问题,请各位高手帮忙!
1.原系统中数据库连接用ADOConnectin,并且根据用户的选择需要连接不同的数据库。
2.原系统中为每个子系统分别建立不同的数据模块,共有5个数据模块,共用一个用户选择的数据连接。

我想依据原系统的结构做最少的改动来建立中间层,我的想法如下:
1.建立一个本地数据模块用于管理数据库的连接(TAADOConnectin),用户选择不同的数据库来确定连接数据库的字串(CONNECTINGSTR)。
2.使用原来的5个数据模块来共享连接。
3.建立一个远程数据模块来输出数据接口,即用TDataSetProvider来输出接口。

但是这样设计后,用户就不能选择要连接的数据库,因为数据连接是5个数据模块和远程数据模块共享的,每个用户连接都会创建一个中间层的实例,这样就作不到用户可以选择要连接的数据库的功能了,TADOConnection也没有类是TSession的控件来管理数据连接不知该怎么解决!
...全文
75 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Erice 2003-12-02
  • 打赏
  • 举报
回复
采用多接口,多方法来开发你的服务器
JoeSong 2003-12-02
  • 打赏
  • 举报
回复
我呢虽是一个DELPHI低手,但我研究程序很投入,这个问题我想了想我觉得可以这样做,就是服务器端用五个实例分别连接五个模块对应的数据库,也正如楼上的所讲在服务器端建立一个连接数据库的接口,然后根据客户端的需求时行连接,也许这不是个很好的方法,但我想这个能解决问题,而且会条理比较清楚一点,一点小看法!^_^
2312 2003-10-23
  • 打赏
  • 举报
回复
先占一个位
cdmar79 2003-10-22
  • 打赏
  • 举报
回复
同意 snowfog(秋风舞) 的方法;可以写进一个Switch来选择。
阿发伯 2003-10-20
  • 打赏
  • 举报
回复
hiflower(花) 的方法可行。
hiflower 2003-10-20
  • 打赏
  • 举报
回复
把 ADOConnection 放在 远程数据模块上,添加一个接口方法用于设置连接字符串。
snowfog 2003-10-20
  • 打赏
  • 举报
回复
你可以使用多实例的服务器,而且在服务器的COM接口中声明一个可以选择数据库连接的方法。

1,593

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧