如何用LOCATE查找最后一条满足条件的记录?(200分)

  • 主题发起人 主题发起人 Li Shenghai
  • 开始时间 开始时间
用filter代替locate
 
我来解释一下Another_eYes的意思.
你可用如下代码完成查找.

Table1.Filtered:=False;
Table1.Filter:='X=400';
if Table1.FindFirst then
while Table1.FindNext do
else
ShowMessage('no record can be found!');

delphi的filter很有意思,当filtered设为false时,与findnext配对可完成这种特
殊效果,如果filter功能有限(如不能加function..),不能满足你的要求,你还可以用
onfilterrecord事件进一步处理,可完成更加复杂的查询.
 
我看menxin的方法可以(主观臆断!)。实在不行就自己编一段,
设两个变量、或设一个布尔变量,嗨!直接远行一个循环不就实现了:如
With Table1 Do
Begin
Open;
First;
While Not Eof Do
Begin
if FieldByname('字段')=检索条件 Then
IdxStr := FieldByName('字段').AsString; //若为String型
Next;
end;
Close;
End;
这不,运行完后,IdxStr就是最后一次的查询结果!
kan dan dei si nai!
 
Jams:
上次关于'手纸'的事是我孤陋寡闻,请原谅!你的问题解决了吗?

你的日语不错吗! :)
 
menxin,你好!
问题尚未解决,是否再出点主意?!
 
你还是没敢解我的包吗? :)
你的问题在哪里,是因为没有tlb吗?
 
最好用Winzip压一下,给发过来。我的试题库读在HDD上,不怕一玩就怕万一!
请原谅!(do mo, si mi ma san!)
刚才有几位“老兄”的E-mail地址都一样!是否是你的“哥们”!?
 
什么email一样,哈尔滨据我所知只有huizhang,LSS,红色闪电,pxlei,李正文.你指是
是哪一位?
邮件已发出.
 
刚到“俱乐部”报到的二位:
<a href="mailto:meng_xiong@21cn.com">meng_xiong@21cn.com</a>

<a href="mailto:lhcool@21cn.com">lhcool@21cn.com</a>

不会错!
 
21cn?! %^*$#@(
 
to menxin
能否告知发往我处的文件是干什么用的?
 
将txt(固定格式的)转入Excel中.
 
使用Query就可以了。
如:
with Query1 do
begin
Close;
sql.Text:='Select * From 表 Where 条件';
Open;
Last;
end;

Query1.FieldByName('字段名')
这就是你所需要的最后一条记录
 
表是否有索引,如果是降序排列,改成升序排列,再用Locate查找
反之亦然


 
多人接受答案了。
 
后退
顶部