ADODataSet.commandText:= updata ......;
ADODataSet.open;结果出错了…

解决方案 »

  1.   

    先测试一下你的sql是不是对的!!!用ADODataset没试过去update,如果是Adocommand,adoquery一定是行的!!
    当然你的update代码要没问题
      

  2.   

    UPDATE Table SET FieldA=FieldA-FieldB不知你用的是UPDATE还是UPDATA?
      

  3.   

    用AdoCmd好不好。
    AdoCmd.CommandType := CommandText;
    AdoCmd.CommandText := 'Update Table1 set Table1.A = Table1.A - Table2.B From Table1 Inner Join Table2 on Table1.ID = Table2.ID';
    AdoCmd.ExecuteAdoDataSet并不适合做这种操作。
      

  4.   

    bisc_sunny的方法
    结果[microsoft][ODBC paradox Driver]操作必须使用一个可更新的查询
      

  5.   

    update 是用ExecSQL的,不用open的吧!?
      

  6.   

    你用的是Paradox,对不起,我用的是SQL Server中的查询。
    Paradox对Join连接支持不好。你把SQL改成
    Update Table1 set Table1.A = Table1.A - Table2.B From Table1 Where Table1.ID = Table2.ID
    试试。
      

  7.   

    多谢大家的关注…不过……
    连这样…ADOCom.CommandText:='update 报表 set 行号=99';
    ADOCom.Execute;都..
    [microsoft][ODBC paradox Driver]操作必须使用一个可更新的查询