![]() |
Datenbank: Firebird • Version: 1.5 • Zugriff über: Zeos / IB
Datentyp des Feldes auslesen
Hallo,
ich habe da ein kleines Problem. Ich möchte ganz gerne über die Zeos - Komponenten 6.5.1 die Anzahl der Felder einer Tabelle und dessen Typen auslesen. Wenn ich die IB-Komponenten benutze funktioniert alles wunderbar, nur wenn ich den gleichen Code mit den Zeos-Komponenten anwende funktioniert es bei der Datenbank MySQL aber nicht bei Firebird. Was läuft da falsch ? Um die Anzahl zu bekommen benutze ich folgende Zeile :
Delphi-Quellcode:
anzahl := Query.FieldCount;
Um dem Typ des Feldes zu ermitteln, benutze ich die folgenden Code (habe ich hier in der Library gefunden) :
Delphi-Quellcode:
Kann mir da jemand weiterhelfen ?
Case ZQuery.Fields[IntZaehler].datatype Of
ftUnknown: Begin sType := 'Unknown'; End; ftString: Begin sType := 'String'; End; . . . end; |
Re: Datentyp des Feldes auslesen
Ich denke mal die Menge an Fields ist 0-basierend:
Also muß Deine Anzahl so ermittelt werden:
Delphi-Quellcode:
Moin
zahl := Query.FieldCount-1;
|
Re: Datentyp des Feldes auslesen
Zitat:
|
Re: Datentyp des Feldes auslesen
Hallo Rolf,
hast du dir schon die Komponenten TZSQLMetaData und TIBExtract angesehen? Grüße vom marabu |
Re: Datentyp des Feldes auslesen
Nee, habe ich noch nicht angeschaut. Habe aber mittlerweile herausgefunden, dass wenn ich das Protokol von "firebird-1.5" auf "interbase-6" ändere in der ZConnection, dann funktioniert es auch.
Edit : Wenn ich das gleiche mit SQLMetaData mache, bekomme ich trotzdem noch den Wert 0 bei der Anzahl. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:18 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