如题:
我后台数据库用的是MS SQL SERVER
前台用的DELPHI,大量用DBEXPRESS控件,将来我想把各个页面生成DLL文件的,那么,我的DBEXPRESS控件应该放在DATAMODULE里面好,还是放在各个页面上,不同的方法,效率如何?同时访问数量大概不超过20个客户端。谢谢。

解决方案 »

  1.   

    应该没有什么效率问题,放在DataModule上便于其它单元共用!
      

  2.   

    那么,是否存在这样的说法,就是,DBEXPRESS控件放在DATAMODULE里面,多个用户访问时候,不需要不断地打开数据集?比如,A的此时运行模块M,M通过DBEXPRESS访问EMPLOYY表,B,C,D等都需要运行模块M,访问EMPLOYEE这个表,如果这个EMPLOYEE表的DBEXPRESS控件放在DATAMODULE上面,意味着,A/B/C/D四个用户,只需要有一个数据集就可以了?
      

  3.   

    还有一个更菜无比的问题,比如,DATAMODULE里面有个SIMPLEDATASET1,几个单元都需要访问,比如,单元UNIT1现在用SIMPLEDATASET1打开一个数据集来处理数据,同样,其他的单元也打开这个数据集,进行各自的处理(他们都是对SIMPLEDATASET1处理),比如UNIT1现在增加记录,UNIT2现在是打印他们使用的都是这个SIMPLEDATASET1,当然,我会进行事务处理。这个时候,是否意味着,SIMPLEDATASET1在运行几个实例?
    谢谢。
    不知道我自己描述清楚我的想法没有。
      

  4.   

    如果你每一个页面都使用的Dll模式,那么事实上再运行期间,每个Dll都会包含一个DataModule的,也就是还是每个页面都要不断的打开链接、查询的,不会提高效率。
    好的解决方法就是,使用DataModule建立一个数据链接,查询出一个数据集后,将数据链接或者数据集传入到Dll中,才会提高系统的效率的。