with ADOQuery1 do
  begin
    Close;
    sql.Clear;
    sql.Add('select * from Columns');
    Prepared;
    open;
    Edit;
    with ColumnsListView do
    begin
      ColumnsList := Items.Add;
      ColumnsList.Caption := FieldByName('id').AsString;
      ColumnsList.SubItems.Add(FieldByName('Columns').AsString);
      ColumnsList.SubItems.Add(FieldByName('Directory').AsString);
      ColumnsList.SubItems.Add(FieldByName('Default').AsString);
    end;
    Prepared;
    post;
  end;
小弟想查询数据库,可是代码这样写只能查询一条记录,如何枚举数据库里面所有记录呢?

解决方案 »

  1.   

    with ADOQuery1 do
      begin
        Close;
        sql.Clear;
        sql.Add('select * from Columns');
        Prepared;
        open;
        while not eof do
        begin
          with ColumnsListView do
          begin
            ColumnsList := Items.Add;
            ColumnsList.Caption := FieldByName('id').AsString;
            ColumnsList.SubItems.Add(FieldByName('Columns').AsString);
            ColumnsList.SubItems.Add(FieldByName('Directory').AsString);
            ColumnsList.SubItems.Add(FieldByName('Default').AsString);
          end;
          Next;
        end;
      end;