diaoduquery4.Close;
                  diaoduquery4.DatabaseName:='dddb';
                  diaoduquery4.SQL.Clear;
                  diaoduquery4.SQL.Add('select * from '+jbzname+'对应表');
                  diaoduquery4.Open;
                while diaoduquery4.Eof=false do
                begin
                    if(diaoduquery4.FieldByName('材料名称').AsString=diaoduquery5.FieldByName(t).AsString) and (length(diaoduquery5.FieldByName(t).AsString)>0) then
                       begin                          diaoduquery6.Close;
                          diaoduquery6.DatabaseName:='jbzdb';
                          diaoduquery6.SQL.Clear;
                          diaoduquery6.SQL.Add('select * from 配比 where 任务编号='''+edit25.Text+'''');
                          diaoduquery6.Open;
                          diaoduquery6.FieldByName(diaoduquery4.fieldbyname('对应字段').AsString).AsString:= diaoduquery4.FieldByName('材料名称').AsString;

解决方案 »

  1.   

    因为你写的是赋值语句,所以datase必须处于编辑或者插入状态,
    diaoduquery6.edit
      

  2.   

    diaoduquery6.Open;
    后面加
    diaoduquery6.Edit;
      

  3.   

      diaoduquery6.Close;
                              diaoduquery6.DatabaseName:='jbzdb';
                              diaoduquery6.SQL.Clear;
                              diaoduquery6.SQL.Add('select * from 配比 where 任务编号='''+edit25.Text+'''');
                              diaoduquery6.Open;
                              diaoduquery6.edit;
                              diaoduquery6.FieldByName(diaoduquery4.fieldbyname('对应字段').AsString).AsString:= diaoduquery4.FieldByName('材料名称').AsString;
    这样子可以么
      

  4.   

    diaoduquery6cann't modify a read-only dataset
      

  5.   

    'table is read-only'这个错误咋改啊
      

  6.   

    没那个属性啊 
    我想用它更新数据库中的数据 看来不行 看来得用update了 啊