var
a,b,c,d,e,f:string;
begin if (Trim(edt2.Text))='' then
begin
Application.MessageBox('姓名不能为空!','提示',64);
Exit;
end;
if (Trim(edt3.Text))='' then
begin
Application.MessageBox('性别不能为空!','提示',64);
Exit;
end;
if (Trim(edt4.Text))='' then
begin
Application.MessageBox('年龄不能为空!','提示',64);
Exit;
end;
if (Trim(edt5.Text))='' then
begin
Application.MessageBox('专业不能为空!','提示',64);
Exit;
end;
begin
edt1.Text:=qry_xg.fieldbyname('sno').AsString;
a:=edt1.Text;
with qry_xg do
begin
Close;
SQL.Clear;
SQL.Add('update student set sname=:b,sgentle=:c,sage=:d,sbirth=:e,sdept=:f where sno=:a');
Parameters.ParamByName('b').Value:=Trim(edt2.Text);
Parameters.ParamByName('c').Value:=Trim(edt3.Text);
Parameters.ParamByName('d').Value:=StrToInt(edt4.Text);
Parameters.ParamByName('e').Value:=dtp1.DateTime;
Parameters.ParamByName('f').Value:=Trim(edt5.Text);
ExecSQL;
Application.MessageBox('保存成功!','提示',64);
edt1.Text:='';
edt2.Text:='';
edt3.Text:='';
edt4.Text:='';
edt5.Text:='';
dtp1.DateTime:=Now;
end;
end;
end;其中edit1.text是不变的!~没有修改进去啊!高手看看什么问题
a,b,c,d,e,f:string;
begin if (Trim(edt2.Text))='' then
begin
Application.MessageBox('姓名不能为空!','提示',64);
Exit;
end;
if (Trim(edt3.Text))='' then
begin
Application.MessageBox('性别不能为空!','提示',64);
Exit;
end;
if (Trim(edt4.Text))='' then
begin
Application.MessageBox('年龄不能为空!','提示',64);
Exit;
end;
if (Trim(edt5.Text))='' then
begin
Application.MessageBox('专业不能为空!','提示',64);
Exit;
end;
begin
edt1.Text:=qry_xg.fieldbyname('sno').AsString;
a:=edt1.Text;
with qry_xg do
begin
Close;
SQL.Clear;
SQL.Add('update student set sname=:b,sgentle=:c,sage=:d,sbirth=:e,sdept=:f where sno=:a');
Parameters.ParamByName('b').Value:=Trim(edt2.Text);
Parameters.ParamByName('c').Value:=Trim(edt3.Text);
Parameters.ParamByName('d').Value:=StrToInt(edt4.Text);
Parameters.ParamByName('e').Value:=dtp1.DateTime;
Parameters.ParamByName('f').Value:=Trim(edt5.Text);
ExecSQL;
Application.MessageBox('保存成功!','提示',64);
edt1.Text:='';
edt2.Text:='';
edt3.Text:='';
edt4.Text:='';
edt5.Text:='';
dtp1.DateTime:=Now;
end;
end;
end;其中edit1.text是不变的!~没有修改进去啊!高手看看什么问题
SQL.Add('update student set sname=:b,sgentle=:c,sage=:d,sbirth=:e,sdept=:f where sno=:a');
Parameters.ParamByName('b').Value:=Trim(edt2.Text);
Parameters.ParamByName('c').Value:=Trim(edt3.Text);
Parameters.ParamByName('d').Value:=StrToInt(edt4.Text);
Parameters.ParamByName('e').Value:=dtp1.DateTime;
Parameters.ParamByName('f').Value:=Trim(edt5.Text); 這裏沒有看到:A也沒有看到EDIT1
a:=edt1.Text; 我在上面写到在啊 !~with qry_xg do 前面啊!`
Parameters.ParamByName('a').Value:=a;
楼上正解!
另外变量a,b,c,d,e,f等变量无需以
var
a,b,c,d,e,f:string;
形式声明,因为他们不是在程序中用到的变量,而只是sql语句中的变量
Parameters.ParamByName('a').Value:=a;一句足以
保存成功后,前一个窗体上面的dbgrideh中的数据没有同步更新啊
怎么写啊?
在那里写?