Locate查询不到空的字符串。
q:TQuery
这种写法,定位不到
if q.Locate('FCode','',[]) then//FCode为'',也查询不到
result:=q.FieldByName('PrintCode').AsString;
这样写,也不行
if q.Locate('FCode',Variants.VarArrayOf(['']),[]) then//FCode为'',也查询不到
result:=q.FieldByName('PrintCode').AsString;
换成下面的写法,能得到正确的结果
begin
q.First;
while not q.Eof do begin
if q.FieldByName('FCode').AsString='' then begin
result:=q.FieldByName('PrintCode').AsString;
Break;
end;
q.Next;
end;
end;
版本:2611 |