是这样的:
   1、我在客户端放置clientdataset控件,datasource控件,然后在放置dbedit控件,dbedit同datasource连接,然后用clientdataset.append进行新增数据,这时直接在dbedit中写数据,通过clientdataset.post进行提交数据,可是就是数据无法提交到数据库中,请问怎么处理?
   2、在服务器端添加了过程,在客户端通过clientdataset.appserver进行引用,可是就是看不到刚才定义的过程,请问怎么回事,谢谢。

解决方案 »

  1.   

    中间层你用的是dbexpress组件吗?
    如果是,请注意,该组件除了SimpleDataSet外都是只读的,不能直接append或delete(控件属性)操作,只能通过sql语句执行相应的增加删除,如insert,update,delete(sql语句里)。
    如果你用ADO没问题。但要注意,中间层是多线程的。
      

  2.   

    用DCOM连接数据库,在服务器端写函数执行数据更新,在客户端放CLIENTDATASET,DATASOURCE,DCOMCONNECTION,然后调用DCOMCONNECTION。APPSERVER。服务端函数名来传递数据。
    更新数据时把CLIENTDATASET。DELTA传给服务端
      

  3.   

    huiwww(十足菜鸟)  说得对,
      不过可以用clientdataset.applyupdate(-1)进行提交数据                        applyupdate(-1)这个词可能是错的我忘了怎么写了,你具体找一下。
      

  4.   

    那干吗用CLIENTDATASET里面的COMMANDTEXT这个属性里写一个SQL插入语句,一执行就出错,好像是不允许这样做。各位高手请指教。。
      

  5.   

    ClientDataSet要与DataProvider放在一起用.
    CleintDataSet属性的ProviderName设为DataProvider的名称,
    在DataProvider的Options属性中poAllowCommandText设为True;
    你保存的时候用ClientDataSet.ApplyUpdates(-1)
    就这样了,早点结贴否则就不仁道.
      

  6.   

    1.
    ClientDataSet.ApplyUpdates(-1)2.
    你的服务端增加完过程后可能没有重新编译,然后重新注册!
      

  7.   

    clientdataset.ApplyUpdate(0)必须定义成接口函数或过程,clientdataset.appserver才能够引用。
      

  8.   

    Post只完成本地缓存,要用clientdataset.applyupdate