ADODataSet1.Filtered := False;
  ADODataSet1.Filter := 'userid = 1843';
  ADODataSet1.Filtered := True;
  ADODataSet1.DeleteRecords(arFiltered); // 为删除符合过滤条件的数据数据集已打开,数据库集中包含Userid字段,且为主索引但在执行是出现“操作在该内容中不被容许”的异常,何解?

解决方案 »

  1.   

    不一定要用ADoDataset吧 用个SQL的删除语句删除符合条件的记录不是很快?
      

  2.   

    我只是想知道,为什么删除不了数据。
    ExecuteOptions有什么作用呀?
      

  3.   

    我只是想知道,为什么删除不了数据。
    ExecuteOptions有什么作用呀?好想设置了之后就不能取回数据集了。
      

  4.   

    是不是userid是字串型?
    ADODataSet1.Filter := 'userid = ''1843''';
      

  5.   

    不知道是什么原因,你们说的我都试过
    ADODataSet1.DeleteRecords(arCurrent); //删除当前记录
    就可以为什么,删除过滤后的数据就不行了呀!郁闷
      

  6.   

    删除操作最好用ADOCommand组件,用TADOQuery很容易搞乱的
      

  7.   

    是不是userid的数据类型错了,这是常见错误。