procedure TForm3.Button1Click(Sender: TObject);
var
p1,p2:string;
begin
p1:=Form1.xusername;
p2:=trim(Edit2.Text);
with ADOCommand1 do
begin
if trim(edit1.Text)<>form1.xpsd then
begin
showmessage('输入原密码不正确');
edit1.SetFocus;
end
else
if trim(edit2.Text)=form1.xpsd then
begin
showmessage('新密码不可与原密码相同,请修改');
edit2.SetFocus;
end
else
if trim(edit2.Text)<>trim(edit3.Text) then
begin
Showmessage('新密码和校验密码不同,请修改!');
edit2.setfocus;
end
else
begin
DataModule8.ADOQuery1.Parameters.Clear;
ADOCommand1.CommandText:='update EmployeesXin set 密码:=p1 where 姓名=p2';
parameters.ParamByName('??').Value:=trim(edit2.Text);
parameters.ParamByName('??').Value:=form1.xusername;
execute;
edit1.Text:='';
edit2.Text:='';
edit3.Text:='';
showmessage('修改密码成功!');
DataModule8.ADOTable1.Close;
DataModule8.ADOTable1.Open;
end;
end;
end;
各位哥哥姐姐帮帮忙!
在做毕业设计啊!
如果加入上面的红色字段,运行时提示找不到'??'(我不知道这个函数怎么用,所以加'??'表示),不管在'??'处输入什么,总是提示找不到;如果不加入红色字段,则提示'不正常定义参数对象,提供不一直或不完整的信息',应该怎么修改啊?
非常感谢!
var
p1,p2:string;
begin
p1:=Form1.xusername;
p2:=trim(Edit2.Text);
with ADOCommand1 do
begin
if trim(edit1.Text)<>form1.xpsd then
begin
showmessage('输入原密码不正确');
edit1.SetFocus;
end
else
if trim(edit2.Text)=form1.xpsd then
begin
showmessage('新密码不可与原密码相同,请修改');
edit2.SetFocus;
end
else
if trim(edit2.Text)<>trim(edit3.Text) then
begin
Showmessage('新密码和校验密码不同,请修改!');
edit2.setfocus;
end
else
begin
DataModule8.ADOQuery1.Parameters.Clear;
ADOCommand1.CommandText:='update EmployeesXin set 密码:=p1 where 姓名=p2';
parameters.ParamByName('??').Value:=trim(edit2.Text);
parameters.ParamByName('??').Value:=form1.xusername;
execute;
edit1.Text:='';
edit2.Text:='';
edit3.Text:='';
showmessage('修改密码成功!');
DataModule8.ADOTable1.Close;
DataModule8.ADOTable1.Open;
end;
end;
end;
各位哥哥姐姐帮帮忙!
在做毕业设计啊!
如果加入上面的红色字段,运行时提示找不到'??'(我不知道这个函数怎么用,所以加'??'表示),不管在'??'处输入什么,总是提示找不到;如果不加入红色字段,则提示'不正常定义参数对象,提供不一直或不完整的信息',应该怎么修改啊?
非常感谢!
另外参数名称前加‘:’。
ADOCommand1.CommandText:= 'update EmployeesXin set 密码=:p1 where 姓名=:p2 ';
parameters.ParamByName( 'p1 ').Value:=trim(edit2.Text);
parameters.ParamByName( 'p2 ').Value:=form1.xusername;
parameters.ParamByName('p1').Value:=trim(edit2.Text);
parameters.ParamByName('p2').Value:=form1.xusername;
啰唆一下,参数面前加 :ADOCommand1.CommandText:= 'update EmployeesXin set 密码=:p1 where 姓名=:p2 ';
parameters.ParamByName( 'p1 ').Value:=trim(edit2.Text);
parameters.ParamByName( 'p2 ').Value:=form1.xusername;
ADOCommand1.excute;