1.高手都说Sql语句要在server端构造,但怎么实现构造啊,迷茫!!!希望高手说说具体怎么做的!
2.不知道clientdataset和datasetprovider具体是干什么的,我试了一下不用这两个控件,直接传个sql语句过去,一样可以啊.
3.看到大家经常用applyupdate,我怎么不知道在哪里用啊,比如我client那里有个Edit 和 button!我点button就把edit.text插入一个表里,象这样最简单的功能是怎样实现?
4.如果用clientdataset的commandtext,数据在程序里的流程具体是怎么走的?是不是CDS把commandtext传给providerdataset,然后provider传给dataset,然后执行!
5.问题问的很乱,大家可能看着晕,说明了我对三层的迷茫!:(

解决方案 »

  1.   

    简单的SQL语名是不用在SERVER上去写的。要在SERVER写的通常是存储过程之类的批量SQL语句。写在SERVER端的SQL语名有较高的程序执行效率!!!      dataesetprovider是用在应用程序服务器端的。它通常放在服务器端的远程数据模块中,它联的是table控件或 query控件,。      dataesetprovider向CLIENTDATASET提供一个访问数据库的接口. 
          Clientdataset 控件是用在客户端的,它联的是服务器端的dataesetprovider控件!!!。      用TABLE或QUERY控件POst就可以将值写到数据中。借是在多层结构中用Clientdataset中POst后数据是写不到数据库中的。必须用APPLYUPDATE向服务器提交!!!!applyupdate后跟的参数是用来表示允计最大的错误数的!!!!     Clientdataset的用法和TABLE没有多大差别,要注意它的remoteserver和providername 属性!!! 前者是指所联接的应用程序服务器。。后者是指和所联接应用程序服务器所数据提供者即对就的服务端的dataesetprovider控件!!!
         在多层结构中要注意中客户端和应用程序服务器联结的方式是哪一种!!!!
      
      

  2.   

    推荐李维的Delphi5分布式开发,具体书名忘了
      

  3.   

    QUERY-provider------DCOM-clintdataset
    我是先传数据,然后在服务器中用触发