Autor Beitrag
Alibi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 458

Win2K SP3
Delphi 6 Ent
BeitragVerfasst: Do 12.12.02 21:45 
Hi,
ich will überprüfen, ob in einer mySQL db schon ein bestimmter Satz Felder in einer bestimmten Table vorhanden ist.
Wie bekomm ich also alle Feldnamen der Tabelle blubb in eine TStringList bla?
Für den DBZugriff verwende ich ZeosLib.
neojones
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1206
Erhaltene Danke: 1



BeitragVerfasst: Fr 13.12.02 10:39 
Indem Du das SQL-Statement "DESC TABLE" ausführst. Das gibt als Ergebnismenge die Feldnamen und Typen zurück und die kannst Du dann mit einer Schleife in eine Stringliste einlesen.

_________________
Ha! Es compiliert! Wir können ausliefern!
Alibi Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 458

Win2K SP3
Delphi 6 Ent
BeitragVerfasst: Fr 13.12.02 15:17 
Danke, bloß wie les ich das Resultat von dem SQL Query aus? TZMySQLQuery ist leicht unübersichtlich. :)
bis11
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1247
Erhaltene Danke: 2

Apple Mac OSX 10.11

BeitragVerfasst: Fr 13.12.02 16:09 
Hier ein Beispiel, was aber umgeschrieben auf die ZeosLibKomponenten genau so gut funktioniert :

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
  HerstellerZub := TStringList.Create;                 
  HerstellerHardw := TStringList.Create;              
  with DatenModul.ADOQueryZubehoer do begin                              
    SQL.Clear;                                                       
    SQL.Add(PChar(selectorderspalte(PChar('ZubehoerHersteller'),           
       PChar('Zubehoerstammdaten'),PChar('ZubehoerHersteller'))));      
    Open;             
    HerstellerZub.Clear;HerstellerHardw.Clear;  
    Active := True;           
    while not Eof do begin 
      HerstellerZubehoerAbfrage.Items.Add(Fields[0].AsString);                 
      HerstellerZub.Add(Fields[0].AsString);  
      next;                 
    end;                    
    Active := False;    
  end;


Setze einfach Deine Komponenten ein und dann sollte es funktionieren, ich habe bei diesem Beispiel die Datenbankkompo's in einem Datenbank-Modul.
Alibi Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 458

Win2K SP3
Delphi 6 Ent
BeitragVerfasst: Fr 13.12.02 16:30 
Geht wunderbar. :)
Wusste halt nur nich, wie ich auf ein Result zugreife, wenn ich kein Feldnamen habe. :)