如题!~~~
下面是我的更新代码,需要执行至少3次最多20多次,现在就是最后一次一般不成功,请各位大大帮忙解决下
with DM.ADOQ_Main do
begin
//Close;
SQL.Clear;
SQL.Add('Update ColSetup Set ');
SQL.Add('bVisible=:bVisible');
SQL.Add(' Where ID='+CurrentNode.Texts[0]);
Parameters.ParamByName('bVisible').Value:=not(StrToBool(CurrentNode.Texts[4]));
ExecSQL;
end;
下面是我的更新代码,需要执行至少3次最多20多次,现在就是最后一次一般不成功,请各位大大帮忙解决下
with DM.ADOQ_Main do
begin
//Close;
SQL.Clear;
SQL.Add('Update ColSetup Set ');
SQL.Add('bVisible=:bVisible');
SQL.Add(' Where ID='+CurrentNode.Texts[0]);
Parameters.ParamByName('bVisible').Value:=not(StrToBool(CurrentNode.Texts[4]));
ExecSQL;
end;
什么叫程序操作过快啊
希望仔细跟踪调试。
现把问题详细阐述一次,希望各位大大能看出问题所在!~~~
因TREEVIEW列是数据库存储各项属性值,TREEVIEW的列是动态更新的,现点击BOTTON弹出管理窗口,修改其中某值后,马上关闭窗口,
回到TREEVIEW窗口,在关闭管理窗口时刷新TREEVIEW,刷新时,TREEVIEW删除全部内容,从新从数据库里读取数据,从新写TREEVIEW
的列和数据,现在就有个这个问题,假如,我不在管理窗口关闭时,或者不在TREEVIEW从写前使用SLEEP停止一下,有可能出现刷新无效
,就是列的显示与否(最直接的体现),修改后不会立即体现出来,等一下,再刷新的话,就没这个问题!~~
因为看来你的操作是正确的,应该是取出来的缓冲数据集没有更新