zoukankan      html  css  js  c++  java
  • 數據集query的自帶函數lookup用法

    數據集query自帶了一個函數lookup,它會返回一個任意類型的值,需要3個常量參數:

    參數1:字段名,參數2:字段值,參數3:需要返回其值的字段名。此函数主要作取值用。

    //參數1為string類型,可以為多個值,用英文狀態下的;隔開【field之間要用英文狀態下的分號;隔開,用逗号,会报错】。  

    //參數2為variant類型,當參數1傳了多個字段時,參數2就要傳數組過去。  

    //參數3為string類型。  

    //前面的const表示調用的時候只是把值複製一份過來而已。

    注意:參數1不一定要是主鍵,是唯一索引就行,只要能定位到所需的资料【uniquekey唯一索引,主鍵也算唯一索引】

    procedure TForm2.Button1Click(Sender: TObject);
    VAR
      SS:STRING;
    begin
      ADOQUERY1.Open;
      //數據集的lookup函數會返回一個任意類型的值,需要3個常量參數:
      //參數1:字段名,參數2:字段值,參數3:需要返回其值的字段名
      //SS:=ADOQUERY1.Lookup('NAME','jery','SCORE'); //60
      SS:=ADOQUERY1.Lookup('NAME','jery','DATES');//2020/01/04 上午 10:03:50
      SHOWMESSAGE(SS);
      ADOQUERY1.Close;
    end;

    lookup的详细参数相关:

    详细运用:

    procedure TForm2.Button1Click(Sender: TObject);
    VAR
      TempFieldList: TStringList;
      ss:string;
      s1:VARIANT;
    begin
      adoquery1.Open;
      //ss:=ADOQUERY1.LOOKUP('name','niki','score'); //90
      //參數1為string類型,可以為多個值,用英文狀態下的;隔開【field之間要用英文狀態下的分號;隔開,用逗号,会报错】
      //參數2為variant類型,當參數1傳了多個字段時,參數2就要傳數組過去
      //參數3為string類型
      //前面的const表示調用的時候只是把值複製一份過來而已
      //注意:參數1不一定要是主鍵,是唯一索引就行,只要能定位到所需的资料【uniquekey唯一索引,主鍵也算唯一索引】
      ss:=VarToStr(adoquery1.Lookup('name;score',vararrayof(['niki',90]),'dates'));//
      //因为返回值是变体类型,當值为null時,赋值给字符串,转换不过去,就會報錯!用VarToStr函數轉換一下即可。
      showmessage(ss);
      //還可以返回多個字段的值。此時要用variant類型的變量來承接!!
      s1:=adoquery1.Lookup('name;score',vararrayof(['niki',90]),'dates;passwords');//,n123
      showmessageFMT('%S,%S',[S1[0],S1[1]]);//彈出',n123'
      adoquery1.Close;
    
     { TempFieldList:=TSTRINGLIST.Create;
      TempFieldList.CommaText:='PUR_DATE,A.VENDOR,A.PUR_NO';
      SHOWMESSAGEFMT('%D',[TempFieldList.Count]); //3
      TempFieldList.Free;
      TempFieldList:=NIL; }
    end;

    Adoquery1的sql語句(SELECT *  FROM  AAA)返回的數據集如下:

    NAME PASSWORDs score DATEs
    hary n123 90 2019-12-31 08:22:09.253
    niki n123 90 NULL
    miya n123 80.5 2019-12-31 08:20:51.987
    hary n123 90 2019-12-31 08:22:09.253
    niki n123 80.5 2019-12-31 08:22:09.253
    jery n111111 60 2020-01-04 10:03:50.407
    jery n111111 60 2020-01-04 10:03:50.407
    jery n111111 60 2020-01-04 10:04:52.670
    NANA n123 90 2021-05-20 14:26:02.607

  • 相关阅读:
    20161101学习笔记
    20161031学习笔记
    20161028学习笔记
    20161027学习笔记
    ReentrantLock Condition
    ReentrantLock 重入锁
    CountDownLatch用法与原理
    场景化解释 AQS原理
    Atomic
    多线程工具类
  • 原文地址:https://www.cnblogs.com/168-h/p/15064856.html
Copyright © 2011-2022 走看看