Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi [MySQL 3.23] "Show Tables" angezeigt in Listview (https://www.delphipraxis.net/22882-%5Bmysql-3-23%5D-show-tables-angezeigt-listview.html)

KyroxX 25. Mai 2004 17:15


[MySQL 3.23] "Show Tables" angezeigt in Listview
 
Hallo,

nutze die ZEOS und möchte meine Datenbanktabellen anzeigen.
Dafür nutze ich folgenden code:

"query.SQL.Text:='SHOW TABLES;';
query.Open;"

nun möchte ich diese Daten in mein ListView(liste2) eintragen.
Etwa so:

"while not query.Eof do
begin
ListItem := liste2.Items.Add;
ListItem.Caption:=query.FieldByName('WAS kommt HIER hin? *g').AsString;
query.Next;
end;

Also was kommt hinter FieldByName?
Table? Tables?

irgendwie blick ichs nich lol

*grins*

(sicher wieder der übelst blödeste feher den gibbt ^^) :zwinker:

schonmal thx *g

Chewie 25. Mai 2004 17:27

Re: [MySQL 3.23] "Show Tables" angezeigt in Listvi
 
Der Name der Spalte bzw., falls du die Abfrage mit AS abgeschickt hast, den Alias, den du definiert hat.

KyroxX 25. Mai 2004 17:29

Re: [MySQL 3.23] "Show Tables" angezeigt in Listvi
 
der name der spalte..ja
bloss: wie is die spaltenüberschrift der database für ne tabelle?

table?

hmm geht nich...

p.s.: Ich würd mal vermuten man muss erst die DATABASE holen und dann die Tables der Database checken.
Nur wie?

SHOW DATABASE
SELECT TABLE FROM DATABASE oder wie?

Chewie 25. Mai 2004 17:32

Re: [MySQL 3.23] "Show Tables" angezeigt in Listvi
 
Uups, tut mir leid, ich hab mir deinen Query nicht angekuckt :oops:

Versuchs mal mit Tables_in_<Name der Datenbank> (ohne die Spitzen Klammern)

Gollum 25. Mai 2004 17:33

Re: [MySQL 3.23] "Show Tables" angezeigt in Listvi
 
Hallo,

mit dem Spaltennamen bin ich mir nicht ganz sicher:

MySQLFront und PhpMyAdmin geben "Tabels_in_[DBName]" zurück. Wobei [DBName] der Name der aktuellen Datenbank ist.

Eine andere Möglichkeit wäre:

Delphi-Quellcode:
  ListItem.Caption:=query.Fields[0].AsString;

KyroxX 25. Mai 2004 17:38

Re: [MySQL 3.23] "Show Tables" angezeigt in Listvi
 
dankeschön - geht:

also für alle die das gleiche prob haben *g

Hier nochmal der ganze quellcode:

Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var i:integer;
begin
ListBox.Clear;
query.SQL.Add('SHOW TABLES');
query.Open;
query.First;
for i := 1 to query.RecordCount do
begin
  ListBox.Items.Add(query.FieldByName('Tables_in_Datenbankname').AsString);
  query.Next;
end;
end;
THX ;)

Chewie 25. Mai 2004 17:40

Re: [MySQL 3.23] "Show Tables" angezeigt in Listvi
 
Ich würde dir aber empfehlen, in diesem Falle auf die Zahlenindexierung zurückzugreifen. Bei MySQL mag es so noch funktionieren, aber spätestens, wenn du auf eine andere Datenbank wechselst, kann es zu Problemen kommen.

KyroxX 25. Mai 2004 17:40

Re: [MySQL 3.23] "Show Tables" angezeigt in Listvi
 
da steckt noch nen kleiner bug irgendwo.
Wenn man 2 ma diesen procedure ausführt dann bekommste nen netten SQL error.
Mal schaun ;)

Gollum 25. Mai 2004 17:41

Re: [MySQL 3.23] "Show Tables" angezeigt in Listvi
 
Hallo,

wenn schon, denn schon:

Delphi-Quellcode:
  ...
  ListBox.Clear;
  query.Close;
  query.SQL.Text:='SHOW TABLES';
  query.Open;
  while not query.Eof do
  begin
    ListBox.Items.Add(query.Fields[0].AsString);
    query.Next;
  end; // while
  ...


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:57 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz