![]() |
Datenbank: Paradox • Version: 7 • Zugriff über: BDE
Paradox Tabellenstruktur auslesen?
Hallo,
weiß jemand, wie ich die Tabellenstruktur einer Pradoxdatei auslesen kann? Brauche "Field Name", "Type" und "Size" und vieviele Zeichen ist ein Numeric Feld lang? Hab dazu nix gefunden dazu.... Danke & Gruß Mitchl |
Re: Paradox Tabellenstruktur auslesen?
Hallo Mitchl,
eine von vielen Möglichkeiten zeige ich dir hier, du kannst das sicher an deine Bedürfnisse anpassen.
Delphi-Quellcode:
Grüße vom marabu
function GetFieldInfo(const dbname, tblname, fldnames: String; s: TStrings): Boolean;
var q: TQuery; i: Integer; begin Result := false; s.Clear; q := TQuery.Create(nil); with q do begin DatabaseName := dbname; SQL.Text := Format('select %s from %s where 1 = 0', [fldnames, tblname]); try Open; except Exit; end; try for i := 0 to Pred(Fields.Count) do s.Add(Format('%s,%s,%d', [ Fields[i].FieldName, FieldTypeNames[Fields[i].DataType], Fields[i].DataSize ])); finally Close; end; Result := true; end; end; procedure TDemoForm.InfoButtonClick(Sender: TObject); var i: Integer; s: TStrings; begin s := TStringList.Create; if GetFieldInfo('DBDEMOS', 'country', '*', s) then begin StringGrid.RowCount := Succ(s.Count); StringGrid.Rows[0].CommaText := 'Name,Type,Size'; for i := 0 to Pred(s.Count) do StringGrid.Rows[Succ(i)].CommaText := s[i]; end; s.Free; end; |
Re: Paradox Tabellenstruktur auslesen?
Letzte kurze und evtl. blöde Frage bevor ich das ausprobiere!
Sieht ein wenig nach SQL-aus, benutze das aber nicht zum ansteuern der Datenbanken! Geht das dann auch?? Auf dem Gebiet bin ich noch nicht gewesen?? Danke & Gruß Mitchl |
Re: Paradox Tabellenstruktur auslesen?
Ob du in den anderen Teilen deines Programms SQL benutzt oder nicht ist egal. In der Funktion GetFieldInfo() habe ich eine Query verwendet, weil ich so die gewünschten Metadaten alleine einlesen kann - ohne die überflüssigen echten Daten. Es gibt noch kompliziertere Wege um dein Ziel zu erreichen. Leichtere sind mir gerade keine eingefallen. Und vielleicht kommst du ja auch auf den Geschmack und wirst dich in Zukunft mehr mit SQL beschäftigen. Dann steht dir auch die Welt der Client-Server-Datenbanksysteme offen.
marabu |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:49 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz