从下面代码可以看出:where 名称: 说明'名称'不能修改,怎改成'名称'也可以修改?
table 编号,名称,品类,单位价格,货位
try
with adoquery do
begin
close;
sql.Clear;
sql.Add('update bhb set 编号=:bh,品类=:pl,单位价格=:dwjg,货位=:hw where 名称=:mc');
Parameters.ParamByName('mc').Value:=trim(edit1.Text);
Parameters.ParamByName('bh').Value:=trim(edit2.Text);
Parameters.ParamByName('pl').Value:=trim(edit3.Text);
Parameters.ParamByName('dwjg').Value:=trim(edit4.Text);
Parameters.ParamByName('hw').Value:=trim(edit5.Text);
execsql;
showmessage('修改成功!');end;
except
showmessage('修改失败!');
end;
table 编号,名称,品类,单位价格,货位
try
with adoquery do
begin
close;
sql.Clear;
sql.Add('update bhb set 编号=:bh,品类=:pl,单位价格=:dwjg,货位=:hw where 名称=:mc');
Parameters.ParamByName('mc').Value:=trim(edit1.Text);
Parameters.ParamByName('bh').Value:=trim(edit2.Text);
Parameters.ParamByName('pl').Value:=trim(edit3.Text);
Parameters.ParamByName('dwjg').Value:=trim(edit4.Text);
Parameters.ParamByName('hw').Value:=trim(edit5.Text);
execsql;
showmessage('修改成功!');end;
except
showmessage('修改失败!');
end;
s:string;
beginwith adoquery do
begin
s:=Fields[1].AsString;
close;
sql.Clear;
sql.Add(format('update bhb set 名称=''%s'',编号=''%s'',品类=''%s'',单位价格=%f,货位=''%s'' where 名称=''%s''',
[trim(clmcedit.Text),
trim(bhedit.Text),
trim(pledit.Text),
StrToFloat(dwjgedit.Text),
trim(hwedit.Text),s
]));
execsql;
end;
try
with adoquery do
begin
close;
sql.Clear;
sql.Add('update bhb set 名称=:mc2,编号=:bh,品类=:pl,单位价格=:dwjg,货位=:hw where 名称=:mc');
Parameters.ParamByName('mc').Value:=trim(edit1.Text);
Parameters.ParamByName('mc2').Value:=trim(edit1.Text);
Parameters.ParamByName('bh').Value:=trim(edit2.Text);
Parameters.ParamByName('pl').Value:=trim(edit3.Text);
Parameters.ParamByName('dwjg').Value:=trim(edit4.Text);
Parameters.ParamByName('hw').Value:=trim(edit5.Text);
execsql;
showmessage('修改成功!'); end;
except
showmessage('修改失败!');
end;
例如你输入edit1
输入.
会显示edit1的属性出来!,但不会
with adoquery do
begin
close;
sql.Clear;
sql.Add('update bhb set 名称=:mc2,编号=:bh,品类=:pl,单位价格=:dwjg,货位=:hw where 名称=:mc');
Parameters.ParamByName('mc').Value:=trim(edit1.Text);
Parameters.ParamByName('mc2').Value:=trim(edit1.Text);
Parameters.ParamByName('bh').Value:=trim(edit2.Text);
Parameters.ParamByName('pl').Value:=trim(edit3.Text);
Parameters.ParamByName('dwjg').Value:=trim(edit4.Text);
Parameters.ParamByName('hw').Value:=trim(edit5.Text);
execsql;
showmessage('修改成功!'); end;
except
showmessage('修改失败!');
end;
try
with adoquery do
begin
close;
sql.Clear;
sql.Add('update bhb set 名称=:mc2,编号=:bh,品类=:pl,单位价格=:dwjg,货位=:hw where 名称=:mc');
Parameters.ParamByName('mc').Value:=trim(edit1.Text);
Parameters.ParamByName('mc2').Value:=trim(clmcedit.Text);//这里改一下
Parameters.ParamByName('bh').Value:=trim(edit2.Text);
Parameters.ParamByName('pl').Value:=trim(edit3.Text);
Parameters.ParamByName('dwjg').Value:=trim(edit4.Text);
Parameters.ParamByName('hw').Value:=trim(edit5.Text);
execsql;
showmessage('修改成功!'); end;
except
showmessage('修改失败!');
end;
没有这个控件呀?
假如有,那还不是一样?
Parameters.ParamByName('mc2').Value:=trim(clmcedit.Text);//这里是修改后的值