SHOW Tables in Java/MySQL

Halo1982

Mitglied
Hallo
ich versuche im Moment, das ich über Java auf MySQL zugreifen kann. Es wird langsam besser, aber ich scheitere an dem Versuch, mit dem Befehl SHOW TABLES die Tabellen meiner Datenbank anzeigen zu lassen.

Wie muss ich den Befehl schreiben, um die Namen der Tabellen in Java nutzen zu können, am besten in einem String ARRAY?
 
... sagt das die Klasse DatabaseMetaData nicht existiert. Ideen?

Dann fehlt dir wahrscheinlich ein import.Hierbei ist es immer hilfreich die Fehlermeldung so exakt wie nur möglich wiederzugeben

Anmerkung: BlueJ ist zwar nicht so schlecht um Java zu lernen und üben. Aber je komplexer die Anwendungen werden umso besser wäre es auf eine IDE ala Eclipse oder NetBeans umzusteigen.
 
Anstatt Show Tables kannst du z.B. folgendes nutzen:

Code:
SELECT table_name
FROM INFORMATION_SCHEMA.TABLES
WHERE Table_schema like '%db_name%';

Über das Information-Schema kannst du Tabellen, Spalten usw. abfragen. Show Tables macht vermutlich nichts anderes als über dieses Schema die Abfrage zu generieren.
Ob das mit BlueJ geht, weiß ich nicht, kenn ich auch nicht.
 
Ich weiss nicht ob du dein Problem gelöst hast, eine Rückmeldung ist immer hilfreich. Aber dir fehlt:

import java.sql.DatabaseMetaData;
 
Ok, gelöst, ich arbeite mit show tables und nutze dann folgenden Code:
Code:
resultSet = statement.executeQuery("show tables");
      while (resultSet.next())
      {
      String tabname = resultSet.getString("Tables_in_"+dbName);
      }
durch ein MySQL tool habe ich herausgefunden, unter welchem Namen das ganze gespeichert wird und das dann einfach angepasst 🙂
 
geht mich zwar nichts an aber warum machst du nicht gleich so??

Java:
resultSet = statement.executeQuery("show tables in "+dbName);
      while (resultSet.next())
      {
      String tabname = resultSet.getString(1);
      }
 

Zurück
Oben