Delphi TQuery 的Locate用法小探(续)

类别:Delphi 点击:0 评论:0 推荐:

                                                                               [ By  浪子([email protected])  At:2005.01.07 ]

 
  874一下CSDN的Blog服务器,老是出错。写了半天的文章忘了Copy,结果Post->Error->Over了。气死我了。差点把阿姨那香气喷喷的鱼丸全部吐掉。午休时间没了,心情也没了。我就化繁为简,大概说下多栏查询的一些需要注意的地方。

with CustTable do
  Locate('Company;Contact;Phone', VarArrayOf(['Sight Diver', 'P', '408-431-1000']), [loPartialKey]);

  1、使用“;”来分割多个字段名称,用VarArrayOf()来传递多个定位值。
  2、字段一定要和数据库完全一样,即使你用习惯了的空格也不行。虽然使得程序看起来跟清楚点,但是Locate不会自己做Trim,所以它把空格也当成字段名称的一部分。
  3、因为定位值采用Variants,所以定位就不知局限于字符串了。
  4、对于多栏查询的结果,一定要所有栏位全部符和才可以,只要有一栏不符合,就会返回False。

 Ok,关于Locate的用法就说到这里,写个小例子当作总结。

 var
  LocateSuccess: Boolean;
  SearchOptions: TLocateOptions;
  StrField,StrLocate:String;//字段名称,定位值
begin
  SearchOptions := [loCasesensitive,loPartialKey];
  LocateSuccess := CustTable.Locate(StrField,StrLocate, SearchOptions);
end;


                                                                                         
作者Blog:http://blog.csdn.net/walkingboy/

本文地址:http://com.8s8s.com/it/it4410.htm