Datasetprovider是不是在客户端创建远程对象前必需进行数据库连接(必须对AdoConnection连接),否则客户端ClientDataset得不到数据?
  我试过了可以写在远程数据模块的Creat事件中,自定义方法创建连接都不行,请高手赐教?急需????谢谢!

解决方案 »

  1.   

    DatasetProvider 必须关联一个数据集组件如 ADOQery。
    ADOQuery 关联一个数据库连接组件 ADOConnection,并设置好 SQL 属性。
    ADOConnection 设置好连接属性客户端相应的 ClientDataSet 打开时,会自动连接到数据库。设计阶段,应该在 IDE 中设置 ClientDataSet 的 Active 属性为 False。
      

  2.   

    难道只可静态配置,不可以从客户端传用户名、密码动态创建AdoConnection连接属性吗?
      

  3.   

    可以的
    在设计期内先将adoconnection设为不活动。
    在远程模块中添加一个过程接受客户端传来的参数形成connectstring赋给adoconnecton后连接。要求客户端在调用该过程前不能使用任何数据库的数据因为此时没有连接。,
      

  4.   

    可以的,正如楼上所说。
    view|Type Library
    在相关的  IRemoteDataModule 部分添加一个 Login 方法接受客户端的参数。
    客户端通过 AConnection.AppServer.Login(...) 传递参数给中间层,然后中间层进行数据库连接。
      

  5.   

    好的,终于解决了,谢谢(Hiflower)了!