我在程序中使用了一个叫Absolute_Database的数据库引擎,该引擎不支持存储过程,用它自带的QUERY控件在DXGRID显示两个表的数据,QUERY的SQL是用LEFT JOIN 把两个表连接起来的,现在想在GRID中修改数据后就直接把数据更新回数据库,由于使用了连接的SQL,该QUERY就把数据自动设置成了READONLY,想请各位大虾帮我想个解决的方法,只要实现GRID中修改来自不同表数据的方法!

解决方案 »

  1.   

    有没有变通的方法,比如用midas里的cilendataset可以实现吗?
    我想这个使用方法应该还是经常要用到的,大家是如何做的?交流一下
      

  2.   

    如果query中涉及到多个表,返回的结果就会是只读的,你用query1.edit就会报错。
    如果用了 order by 或group by 等子句,也会只读.
      

  3.   

    使用UPDATEQUERY控件就可以达到多表修改的要求了,在论坛搜索一下这个问题就知道了,我以前也做过很多这样的程序。如果不使用UPDATEQUERY控件,只使用QUERY的话最多只能修改单表查询的数据。
    query.requestlive :=TRUE 是改变只读属性,
      

  4.   

    唉,哪个数据库引擎没有带UPDATAQUERY这个东西,我用DELPHI的UPDATAQUERY也用不了