Einzelnen Beitrag anzeigen

Robert_G
(Gast)

n/a Beiträge
 
#2

Re: Feldexistenz überprüfen

  Alt 4. Feb 2004, 09:55
Ist nicht die eleganteste Lösung, benötigt aber weder TTable, TDataSet - nur eine einfache Query.
Delphi-Quellcode:
Var
  i : Integer;
Begin
  With Query Do
  Begin
    SQL.Text := Format(
      'SELECT t.*' + #10 +
      'FROM %s t' + #10 +
      'WHERE RowNum <= 1'
      , [Edit1.Text]);
    Execute;
    ListBox1.Clear;
    For i := 0 To pred(FieldCount) Do
      ListBox1.Items.Add(Fieldname(i));
  End;
End;
Wenn du Oracle benutzt kannst du auch diese Lösung benutzten (ADO Query):
Delphi-Quellcode:
  With Query Do
  Begin
    SQL.Text :=
      'SELECT t.Column_Name' + #10 +
      'FROM All_Tab_Columns t' + #10 +
      'WHERE t.Owner = :i_Owner And' + #10 +
      ' t.Table_Name = :i_Table';
    Prepared := True;
    Parameters.ParamByName('i_Owner').Value := 'SCOTT';
    Parameters.ParamByName('i_Table').Value := 'EMP';
    Execute;
    ListBox1.Clear;
    While Not Eof Do
    Begin
      ListBox1.Items.Add(adoquery1.FieldValues[0]);
    End;
  End;
  Mit Zitat antworten Zitat