一个相对棘手的问题。给100分,在线待候。(十万火急!!!!) 在Delphi中locate不能实现模糊查询定位,请各位大哥、大姐们教我怎样才能实现模糊查询定位呢?要比较简单的方法噢。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用findnearest方法,或用ADOQUERY执行sql语句,在查询值前后加%号:例:var key:stringbeginADoQuery1.close; AdoQuery1.SQL.Clear; AdoQuery1.Sql.Add('select * from ' +Table+ ' where ' + key +' like "%'+edit1.Text+'%"'); AdoQuery1.open; indnearest方法要知道一个ID值做参数 locate中的参数没有不完全匹配吗? Locate只支持Table呢,对于TQuery好象无效呢!试试Gotonearest或者干脆一个个查! 你非要用LOCATE定位的话,换个思路,另外用一个QUERY使用模糊查询得到KEY值,然后再用LOCATE定位。当然,就存在匹配条数的问题了 用locate没有问题的,最后一个参数用loPartialKey,如果没有定位到,那就是程序其他方面的问题,比如主键索引之类的function Locate(const KeyFields: String; const KeyValues: Variant; Options: TLocateOptions): Boolean;loPartialKey 用adoquery多好呀for example:adoquery1.sql.clear;adoquery1.sql.add('select * from bbb where xxx like xxx');adoquery1.open;ok!!! 第一位是0的string转换成double? CoolBar控件在哪里? for循环的2个问题 ADOConnection如何连接VF数据库 请问在delphi中的for循环如何设置步长? 如何用鼠标一次选择多个按钮? 今天多了个三角,又是圣诞节顺便散点分庆祝一下 如何使用MessageBeep(UNIT uType); 为什么 瑞星RAV与delphi中的RAV报表冲突 请教各位高手出现BDE问题:Insufficient Memory for This Operation怎么办??? 在线等待-----安装问题!!急急急急
例:
var key:string
begin
ADoQuery1.close;
AdoQuery1.SQL.Clear;
AdoQuery1.Sql.Add('select * from ' +Table+ ' where ' + key +' like "%'+edit1.Text+'%"');
AdoQuery1.open;
,然后再用LOCATE定位。当然,就存在匹配条数的问题了
function Locate(const KeyFields: String; const KeyValues: Variant; Options: TLocateOptions
): Boolean;loPartialKey
for example:
adoquery1.sql.clear;
adoquery1.sql.add('select * from bbb where xxx like xxx');
adoquery1.open;
ok!!!