DataSet Filter为True时修改数据注意

Posted 后凤凰

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DataSet Filter为True时修改数据注意相关的知识,希望对你有一定的参考价值。

当DataSet中Filter:=‘c_id=0001‘;Filtered=true时

while not eof do

begin

if FieldByName(‘sel‘).AsBoolean then

begin

Edit;

FieldByName(‘sel‘).AsBoolean := False;

if FieldByName(‘oldclassid‘).AsString = ‘‘ then

// 如果多次转班,只记录起始的班级

begin

FieldByName(‘oldclassid‘).AsString := FieldByName(‘c_id‘).AsString;

FieldByName(‘oldclass‘).AsString := FieldByName(‘c_name‘).AsString;

end;

FieldByName(‘c_id‘).AsString := AcID;

FieldByName(‘c_name‘).AsString := AcName;

Post;

Continue; //Filtered :=true:连续勾选的情况

end;

Next;

end;

在循环中修改了Filter对应的条件,如果不使用continue那个两个相邻的勾选中后面的一个就不会被操作。

以上是关于DataSet Filter为True时修改数据注意的主要内容,如果未能解决你的问题,请参考以下文章

Spark SQL 中有关 Dataset.filter 的错误

`filter`/`where` 有条件地应用到 Spark `Dataset`/`Dataframe`

delphi中 dataset容易出错的地方

对DataTable(或者DataSet)修改后,提交修改到数据库

filter用法

Python3基础 filter()第一个参数为NONE时 结果只返回为True的对象