本人想做一个关于Delphi数据库开发的简单的示范系统,利用了DBGrid、DBEdit等数据绑定和显示控件。这些控件原来是和datasource、table以及query等控件配合使用的。现在想通过三层midas的方式实现的这些控件原来的功能。系统设置应用服务器为:一个database控件、一个query控件和一个DataSetProvider控件。客户端为一个SocketConnection控件和一个ClientDataSet控件。现在想知道DBGrid、DBEdit等控件在三层条件下能否使用,如果可以的话,该对它们进行怎样的设置?谢谢大家。

解决方案 »

  1.   

    完全可以,这些数据感知控件只不过是从数据集(不管是ADOQuery还是ClientDataSet)取数据并显示。
      

  2.   

    可以d,TClientDataSet也是个TDtataSet的嘛
      

  3.   

    还要建一个远程数据模块,客户端还要用到TClientdataset
    1、a、在一个新的工程(server.dpr)中新建一个远程数据模块TRemoteDataModule(如:    coClass=com) ,
     b 、在远程模块中放一个TAdoconnection(通过该组建连接后台数据库)、  TAdoTable/TAdoquery(connection设置成Tadoconnection)、TDatasetProvider( dataset 设置成TAdoTable ,tablename设置成数据库中的表),运行程序生成server.exe.
    2、a、新建一个工程(client.dpr),加入TDcomconnection或Socketconnection(必须要运行   delphi\bin\scktsrvr.exe),设置computername为先前server.exe服务器所在的计算机,   servername设为server.com,connected设置成true;
     b、加入一个TClientDataset,设置remoteserver为TDcomconnection,设置Providername为server.dpr工程中的TDatasetProvider,将Active设置成true;
      C、加入TDbgrid(datasource设置成Tdatasource),Tdatasource(dataset设置成Tclientdataset)
      

  4.   

    当然可以用,不过中间层不用bde