![]() |
Datenbank: Access 2000 • Zugriff über: ADOConnection,ADOcommand ,_Recordset
Spaltennamen einer SQL-Afrage ermittlen.
hallo
wie ermittelt man alle spaltenname einer SQL-Afrage? hier ist meine SQL-Afrage: 'Select * From Kunde' ich möchte alle Spaltennamen ermitteln. |
Re: Spaltenname einer SQL-Afrgar ermittlen.
Hi,
unter MySql verwende ich den Befehl: SHOW COLUMNS FROM `datenbank`.tabelle LIKE '%'; Unter MSAccess muss etwas ähnliches geben... Gruß Uwe |
Re: Spaltenname einer SQL-Afrgar ermittlen.
diese SQL-Afrage ist nur für MySQL gültig
bei access erkennt sie nicht an. bitt hilfe.. |
Re: Spaltenname einer SQL-Afrgar ermittlen.
In Access gäbe es auch Systemtabellen die diese Infos beinhalten.
Ich machs aber immer mit
SQL-Code:
Und iteration durch die Fields-Auflistung.
Select * From Kunde where 1=2
|
Re: Spaltenname einer SQL-Afrgar ermittlen.
ich will die spaltennamen ermitteln und nicht ihren Inhalt.
|
Re: Spaltenname einer SQL-Afrgar ermittlen.
Ja, genau das hat Bernhard geschrieben.
|
Re: Spaltenname einer SQL-Afrgar ermittlen.
ist das überhaupt möglich alle spaltennamen unter access abzufragen,und nicht deren Inhalt?
also bitte nur um ernsthafte antworten.es ist bei mir dringend. "Show Colomuns from datenbanktabe" läuft nur unter MySQL... |
Re: Spaltenname einer SQL-Afrgar ermittlen.
??? Was war denn jetzt an der Antwort von Bernhard nicht ernsthaft?
Du führst eine Abfrage durch, die alle Spalten, aber keine Zeilen zurückliefert und iterierst dann über alle Fields. |
Re: Spaltenname einer SQL-Afrgar ermittlen.
dann kannst du mir verraten,wie kann man aus der Abfrage "Select * From Kunde Where 1=2" die spaltennamen erkennen.die abrage liefert eine leere Feldsinhalten.
ich benutze weder eine adoquery noch einen adotable.die abrage soll in einem _Recordset gespeichert werden. bei Mysql sieht die spaltennameabfrage wie folgt: "Shown Columns From Kunde" nur diese abfrage ist nicht auf access zu übertragen.. |
Re: Spaltennamen einer SQL-Afrage ermittlen.
Es gibt die Eigenschaft Fields vom Typ TField in der Query-Komponente. Dies funktioniert wie ein Array mit Zählerstart bei "0". Dazu passen gibt es dann die Eigenschaft "FieldName", die man dann passend abfragen kann.
Man muss eben nur durch alle Fields iterieren, wie weiter oben schon geschrieben wurde. Ein bisschen F1 und OH hätten das aber auch leicht zeigen können. :wink: |
Re: Spaltennamen einer SQL-Afrage ermittlen.
leider klappt nicht was du beschrieben hast.dabei habe ich alles getestet.es bleibt einen einzige möglichkeit eine SQL-Abfrage,die eine datanbanktabelle nach ihrer spaltenname abfragt und das geschieht unabhängig ob ich delphi , php,oder irgendwelche programmieresprache benutze.
deswege ist meine frage mehr auf SQL orientiert. |
Re: Spaltenname einer SQL-Afrgar ermittlen.
Zitat:
Solltest Du Dich aber dennoch herablassen können, ein ADODataSet zumindest temporär zu erzeugen, so sollte dir OpenSchema weiterhelfen.
Delphi-Quellcode:
Ist nebenbei datenbankunabhängig.
[...]
ds := TADODataSet.Create(self); try ADOConnection.OpenSchema(siColumns, VarArrayOf([Null, Null, 'Tabelle']), EmptyParam, ds); while not ds.Eof do begin [...] ds.FieldByName('COLUMN_NAME').AsString [...] ds.Next; end; finally ds.Free; end; [...] |
Re: Spaltennamen einer SQL-Afrage ermittlen.
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:35 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