AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi ABSQuery und FieldType
Thema durchsuchen
Ansicht
Themen-Optionen

ABSQuery und FieldType

Ein Thema von NoGAD · begonnen am 22. Mär 2020 · letzter Beitrag vom 27. Mär 2020
 
Benutzerbild von NoGAD
NoGAD

Registriert seit: 31. Jan 2006
Ort: Weimar
345 Beiträge
 
Delphi 10.4 Sydney
 
#1

ABSQuery und FieldType

  Alt 22. Mär 2020, 09:49
Datenbank: ABSDataBase • Version: 7.91 • Zugriff über: ABSQuery
Hallo.

Gibt es eine Möglichkeit den Feldtypen einer Tabellenspalte mittels SQL auszulesen?

Mein Ansatz war nach einiger Suche:


Code:
SELECT DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = test_db AND COLUMN_NAME = neue_spalte
Aber beim compilieren wird eine Fehlermeldung ausgegeben:
Code:
Exception-Klasse EDatabaseError mit Meldung 'Database file 'INFORMATION_SCHEMA' does not exist'.


Ändere ich das um in

Code:
SELECT DATA_TYPE FROM test_db WHERE COLUMN_NAME = neue_spalte
Gibt es eine andere Fehlermeldung:
Code:
Exception-Klasse EABSException mit Meldung 'Cannot find field DATA_TYPE - Native error: 10305'.

Gibt mir bitte jemand einen Tipp, wie ich als Anfänger in Sachen SQL das bewerkstelligen kann?



Ich glaube die Lösung gefunden zu haben:

Code:
   var
     feldtyp : TFieldType;
     feldtyp_string : String;
   begin
        Query.SQL.Text := 'SELECT * From ' + Table_Name + ' WHERE 1 = 0';
        Query.Open;
        feldtyp := Query.Fields[x].DataType;
        feldtyp_string := _Query.Fields[x].ToString;
   end;
Somit kann ich mit feldtyp oder feldtyp_string weiter arbeiten. x ist ein beliebiges Feld der Tabelle.




Es gibt ein neues Problem.

Die Abfrage führt bei einem ftAutoInc - Feld zu einer ftInteger Rückgabe.
Wie könnte man hier noch eine Unterscheidung der Felder herausfinden?
Mathias

Geändert von NoGAD (22. Mär 2020 um 10:33 Uhr)
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:00 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