用DBGrideh控件,字段类型为Bit以复选框的形式显示记录,我添加一个按钮,当选中某条记录的时候,按下该按钮,就可以将当前所有记录的该字段都为选中状态,反之一样.也就是选中一整列,以下是我的程序,可不懂怎么回事,触发该按钮时提示 commandtext does not return a result set~怎么回事啊~~
代码~:
var S0,S1,str:string;
i:integer;
begin
i:=dbgrideh1.SelectedIndex;
if i=0 then exit;
begin
S0:=adoquery1.fieldbyname(dbgrideh1.Columns[i].FieldName).AsString;
if S0= 'True' then S0:='1'
else S0:='0';
showmessage(dbgrideh1.Columns[i].FieldName);
str:='update popedom set '+dbgrideh1.Columns[i].FieldName+'='+S0+' where user_name='''+trim(adodataset1.fieldbyname('name').AsString)+'''';
adoquery1.SQL.Clear;
adoquery1.Close;
adoquery1.SQL.Add(str);
adoquery1.Open;
end;
end;
代码~:
var S0,S1,str:string;
i:integer;
begin
i:=dbgrideh1.SelectedIndex;
if i=0 then exit;
begin
S0:=adoquery1.fieldbyname(dbgrideh1.Columns[i].FieldName).AsString;
if S0= 'True' then S0:='1'
else S0:='0';
showmessage(dbgrideh1.Columns[i].FieldName);
str:='update popedom set '+dbgrideh1.Columns[i].FieldName+'='+S0+' where user_name='''+trim(adodataset1.fieldbyname('name').AsString)+'''';
adoquery1.SQL.Clear;
adoquery1.Close;
adoquery1.SQL.Add(str);
adoquery1.Open;
end;
end;
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货