判断是否为空,用
adoquery.isempty

解决方案 »

  1.   

    query.SQL.clear;
    query.SQL.add('select * from table where ...');
    query.open;
    if query.isEmpty then begin
      //没有合乎条件的记录
    end
    else begin
      //有合乎条件的记录
    end;
      

  2.   

    如果你只是要知道有没有合乎条件的结果,而不需要取得数据的话,sql应该这样写:
    Query1.Close;
    Query1.SQL.Clear;
    Query1.SQL.Add('SELECT COUNT(*) FROM ...');
    Query1.Open;
    if Query1.Fields[0].AsInteger = 0 then
    //无符合条件的记录
    else
    //有符合条件的记录以免从数据服务器传递大量不需要的数据.     轻风又伤心了:2002-06-04
         ____     ____
         \ p \   / g /
          \ l \_/ n /
           \ a   o /
            \ i s /
             \ n /
              \_/
      

  3.   

    如果只想知道是否有符合条件的记录,应该这样写:
    Query1.Close;
    Query1.SQL.Clear;
    Query1.SQL.Add('Select Count(*) From...
    Query1.Open;
    if Query1.Fields[0].AsInteger = 0 then
    //无符合条件的记录
    else
    //有符合条件的记录
    这样可以避免从数据服务器传递大量不需要的数据.     轻风又伤心了:2002-06-04
         ____     ____
         \ p \   / g /
          \ l \_/ n /
           \ a   o /
            \ i s /
             \ n /
              \_/
      

  4.   

    select (case count(*) when 0 then 'has not result' else 'has result' end) 
    from table
      

  5.   

    with adoquery1 do
    begin
     close;
     sql.clear;
     sql.add('select * from table1');
     open;
     if isempty then
       showmessage('no record')
     else
       begin
         xxxx;
        end;
    end;