比较字符串问题 ( 积分: 100 )

  • 主题发起人 主题发起人 fnhkewfg
  • 开始时间 开始时间
F

fnhkewfg

Unregistered / Unconfirmed
GUEST, unregistred user!
procedure TForm1.Button1Click(Sender: TObject);
begin
with adodataset1 do
begin
adodataset1.Close;
adodataset1.CommandText:='select * from YHZL where XM=:XM1 and MM=:MM1';
adodataset1.Parameters.ParamByName('XM1').Value:=Trim(edit2.Text);
adodataset1.Parameters.ParamByName('MM1').Value:=Trim(edit3.Text);
adodataset1.Open;
end;
if comparestr(edit2.Text,adodataset1.fieldbyname('XM').AsString)<>0 then
begin
showmessage('fnhk');
end;

if comparestr(edit3.Text,adodataset1.fieldbyname('MM').AsString)<>0 then
begin
showmessage('ewfg');
end;
end;

end.
Edit2编辑筐的内容与数据集所查到的内容是完全相同的,而Edit3的内容与数据集内容不一样,也就是当它提示信息的时候必须是showmessage('ewfg');才是正确的,不知道为什么它同时也提示Edit2编辑筐中的内容,而Edit2中的内容与数据集相符合的不应该出现提示才对啊,不知道错在那里.是不是Comparestr用的不对
 
comparestr比较的时候大小写敏感 会不会是这个问题?
或者改为
if comparestr(Trim(edit3.Text),Trim(adodataset1.fieldbyname('MM').AsString))<>0 then
 
你查询的条件就是MM=edit3.Text
adodataset1.CommandText:='select * from YHZL where XM=:XM1 and MM=:MM1';
adodataset1.Parameters.ParamByName('XM1').Value:=Trim(edit2.Text);//XM=edit2.Text
adodataset1.Parameters.ParamByName('MM1').Value:=Trim(edit3.Text);//MM=edit3.Text
为什么说“Edit3的内容与数据集内容不一样”?
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部