# auslesen alle Table Name. MySQL, JDBC und Java



## fanxin (21. August 2007)

Hallo,

ich habe ein Problem. ich möchte *alle Tabelle Name in einer Datenbank auslesen*. ich benutze MySQL und Java. Ich habe schon die Document von SQL durchgelesen und in google gesucht. Leider kann ich nicht gefounden.

Konnt jemand mir helfen. vielen Dank.

fanxin


----------



## zerix (21. August 2007)

Hallo,

zeig doch mal bitte was du bis jetzt an code hast.

Der SQL-Befehl um alle Tabellen anzeigen zu lassen ist:

```
show tables;
```

MFG

zEriX


----------



## fanxin (21. August 2007)

hallo, zerix

vielen Dank für Deine Antwort.

ich weiss, dass show Tables ein Befehl in SQL. ist. Ich wollte finden, dass ein Befehl von SQL wie z.B Select * from DB als eine Satz in Java eingelegt wird. 

Die Code habe ich noch nicht geschrieben. ich denke davon, dass Command Befehl show tables  in java nicht benutzt werden kann. 

Ich weiss nicht, ob es eine andere SQL Satz oder andere Javamethode gibt. Dann konnt ich alle Tabellename auslesen.


mfg.

fanxin


----------



## THMD (21. August 2007)

Hallo

schau dir doch mal in der JDBC-API den Interface DatabaseMetaData an. Da findest du alles,
was das Herz begehrt und er wird sogar von allen Anbietern von JDBC-Treibern implementiert (afaik).

Das ganze als kurzes Beispiel. 

```
//conn ist die bereits existierende Connection
DatabaseMetaData md = (DatabaseMetaData) conn.getMetaData();
ResultSet rs = md.getTables("myschema",null,null,null);
while(rs.next())
{
  System.out.println(rs.getString("TABLE_NAME");
}
conn.close();
```

Das gibt dir alle Tabellennamen des Schemas (bzw. der Database bei MySQL) mit dem Namen _myschema_ aus.

hth
THMD


----------



## zerix (22. August 2007)

Der Befehl funktioniert. Mit JDBC setzt man normale SQL-Befehle ab. 

MFG

zEriX


----------



## fanxin (22. August 2007)

vielen Danke für Deine Hilfen.


----------



## THMD (22. August 2007)

zerix hat gesagt.:


> Der Befehl funktioniert. Mit JDBC setzt man normale SQL-Befehle ab



schon - nur ist show tables kein "normaler" SQL-Befehl ;-)

SCNR,
THMD


----------



## zerix (23. August 2007)

> schon - nur ist show tables kein "normaler" SQL-Befehl



Ok, dann sage ich es anders. Show Tables ist ein normaler MySQL-SQL-Befehl. ;-)

Auf jedenfall funktioniert es. 

MFG

zEriX


----------

