Tabellen auflisten, die in einer Datenbank enthalten sind

Status
Nicht offen für weitere Antworten.

javaner08

Aktives Mitglied
Hallo,

ich arbeite mit Hibernate. Gibt es dort nicht eine Möglichkeit, eine Methode o.Ä. die mir eine Liste mit allen in der Datenbank enthaltenen Tabellen zurück liefert ?

Ich habe schon u.a. im "GetSessionFactory"-Objekt nach einer entsprechenen Methode gesucht, aber nichts gefunden....
 

velaluka

Aktives Mitglied
Hallo,
ja von der Session die Connection holen und dort dann die DatabaseMetadata. Die hat eine Methode getTable(....)
Ciao velaluka
 

javaner08

Aktives Mitglied
Danke für die schnelle Antwort. So hab ich das versucht.... :

Session mysession = hibernateDB.getSessionFactory().openSession();
mysession.connection().getMetaData().getTables...

... klappt aber nicht wirklich, weil connection "deprecated" ist.
 

velaluka

Aktives Mitglied
Hallo,
also etwa so in der Art:
Java:
session.doWork(
    new Work() {
        public void execute(Connection con) {
           // con.getDatabaseMetadata()
           // Hier die Arbeit mit der Connection ausführen......

        }
    }
);
Ciao velaluka
 

javaner08

Aktives Mitglied
Hmmm.... ich bin Euch ja echt dankbar, dass Ihr mir helfen wollt, aber im Moment komme ich da nicht weiter.
Zu dem Link zu der Hibernate-API : Da komme ich doch an die DatabaseMetadata auch wieder nur über die Connection ran und die ist immer noch depracted.
Und das Code-Beispiel mit dem "doWork"... : Ich weiss nicht, wie das gehen soll.
Soll ich mir da eine eigene Klasse namens "Work" basteln, die dann die session casted oder wie soll das da weiter gehen ?
 

velaluka

Aktives Mitglied
Hallo,
Work ist ein Interface. Du must also eine Implementierung des Interfaces reinreichen. Hier eben Anonym. Die Hibernate Api ruft dann zur gegebener Zeit die Execute Metode auf und reicht dir netter Weise eine Connection rein :D
Und das ist dann die Stelle an der du mit deinen Metadaten loslegen kannst......
Alle Klarheiten beseitigt :autsch:
sonst fragen ;)
Ciao velaluka
 

javaner08

Aktives Mitglied
nein, hab die Antwort 8:56 nicht übersehen, hab's damit nur leider nicht hingekriegt. eclipse gibt einen Fehler aus, über QuickFix schlägt er dann vor, eine Klasse namens "Work" zu erzeugen... nur wenn ich ihn die erzeugen lasse, dann "meckert" er wieder wg. dem "doWork"... letztendlich bekomme ich das über die Lösung auch nicht hin.
Sorry, aber das sind grad meine ersten "Geh-Versuche" mit Hibernate....
 

javaner08

Aktives Mitglied
Hallo,
Work ist ein Interface. Du must also eine Implementierung des Interfaces reinreichen. Hier eben Anonym. Die Hibernate Api ruft dann zur gegebener Zeit die Execute Metode auf und reicht dir netter Weise eine Connection rein :D
Und das ist dann die Stelle an der du mit deinen Metadaten loslegen kannst......
Alle Klarheiten beseitigt :autsch:
sonst fragen ;)
Ciao velaluka

(da haben sich jetzt meine letzte Antwort und Deine Antwort "überschnitten", ich versuch's gleich nochmal... danke erstmal .)
 

javaner08

Aktives Mitglied
Hallo,
Work ist ein Interface. Du must also eine Implementierung des Interfaces reinreichen. Hier eben Anonym. Die Hibernate Api ruft dann zur gegebener Zeit die Execute Metode auf und reicht dir netter Weise eine Connection rein :D
Und das ist dann die Stelle an der du mit deinen Metadaten loslegen kannst......
Alle Klarheiten beseitigt :autsch:
sonst fragen ;)
Ciao velaluka


na das Angebot nehm' ich doch gerne an...

wenn ich mir Deinen doWork-Code-Schnipsel bei mir rein kopiere und dann "add unimplemented methods" auf "Work" ausführen lasse, dann bekomme ich diverse Methoden generiert : execute, getName, getEnqueueTime usw...

Wo kommt also dieses Work-Interface her ? Ist das ein Bestandteil von session ?
Wenn ich auf "doWork" den "QuickFix" laufen lasse, dann schlägt er "Add Cast to session" vor... wenn ich das dann durchführen lasse, geht eigentlich gar nichts mehr. Was läuft da falsch ? Muss ich ggf. irgendwas importieren oder sowas ?
Bei der session handelt es sich jedenfalls um org.hibernate.session, also sollte doch eigentlich richtig sein...

Außerdem bekomme ich noch ein Fehler bei "public void execute(Connection con) {", weil er "Connection" noch nicht kennt. Welche Connection muss importiert werden ?
com.sun.corba...connection ?
java.sql.connection ?
 
S

SlaterB

Gast
anscheinend hast du
com.sun.corba.se.spi.orbutil.threadpool.Work
importiert und nicht
org.hibernate.jdbc.Work

wenn man solche Dinge nicht auseinanderhält, dann muss ja zwangsläufig alles zerbechen,

gut möglich, dass
org.hibernate.jdbc.Work
bei dir gar nicht vorhanden ist,
erst in Version 3.3.2.GA
https://www.hibernate.org/6.html

-------

> Welche Connection muss importiert werden ?
> com.sun.corba...connection ?
> java.sql.connection ?

hmm, eine gute Frage im SQL-Bereich,
zudem ist in der API genau festgelegt, welche Klasse es ist..

also vielleicht erklärt dir ja wirklich jemand jeden Schritt einzeln,
anderenfalls musst du doch vorher mit Denken anfangen,
paar Grundkenntnisse sind erforderlich, bevor man sich an solche Themen traut
 
Zuletzt bearbeitet von einem Moderator:

javaner08

Aktives Mitglied
gut möglich, dass
org.hibernate.jdbc.Work
bei dir gar nicht vorhanden ist,
erst in Version 3.3.2.GA

Mist ! Hab' gerade mal nachgeschaut und meine Hibernate-Version ist irgendwas mit 3.2....

Das ist dann jetzt wohl aber auch die Erklärung dafür, dass ich an "Work" nicht heran gekommen bin und hier so blöd fragen musste... ich werde mich dann jetzt erst einmal um einen Hibernate-Update bemühen.
 

velaluka

Aktives Mitglied
Hallo,
scheint ja so als wenn du jetzt auf dem richtigen Weg bist. Aber eine Frage hätte ich dann doch mal:

Die Methode connection() ist Deprecated aber das Interface Work ist nicht vorhanden?
Hätte ja erwartet das in der 3.2 Version die Methode noch nicht Deprecated ist und deswegen das Interface nicht vorhanden......
Nicht das du unterschiedliche Hibernate Version vermischt.

@SlaterB
also vielleicht erklärt dir ja wirklich jemand jeden Schritt einzeln,
anderenfalls musst du doch vorher mit Denken anfangen,
javaner08 macht auf mich nicht den Eindruck als bräuchte er eine Gehhilfe;)
Aber manchmal sieht man den Wald vor lauter Bäumen nicht.....

Ciao velalulka
 
S

SlaterB

Gast
> erst in Version 3.3.2.GA
von mir war auch nur geraten, ich habe 2.5 oder so, da ist das Interface nicht dabei ;)
 

javaner08

Aktives Mitglied
(bin bis jetzt leider noch nicht dazu gekommen, mich hiermit weiter zu beschäftigen. Ich muss hier die Einarbeitung in Java auch eher "nebenbei" machen, in der Hauptsache hab' ich halt auch einen Job, um den ich mich kümmern muss... Die oben angedeutete "Denkfaulheit" sehe ich bei mir nicht, eher Zeitmangel.
Aber wie dem auch sei : Ich werde hier weiter dran bleiben, das mit der neuen Hibernate-Version mal ausprobieren und mich dann Anfang nächster Woche wieder melden. Bis dahin : Schönes Wochenende ! )
 

javaner08

Aktives Mitglied
> erst in Version 3.3.2.GA
von mir war auch nur geraten, ich habe 2.5 oder so, da ist das Interface nicht dabei

War aber gut geraten :) ich bin jetzt nach einer Woche zeitlich endlich mal wieder dazu gekommen, mich mit dieser Problematik zu beschäftigen und nachdem ich auf Hibernate 3.3 upgedated habe, funktionierte diese Sache auf einmal völlig reibungslos bei mir.

Sieht man auch schon daran, dass man bei Hibernate 3.2 schon mit folgender Zeile : import org.hibernate.jdbc.Work; auf einen Fehler stösst, ab Hibernate 3.3 dagegen kann "Work" importiert werden und der von velaluka weiter oben gepostete Code funktioniert dann auch einwandfrei.

Vielen Dank an alle, die sich die Mühe gemacht haben, hier zu helfen !
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Access Tabellen auflisten Datenbankprogrammierung 2
OnDemand Daten auf mehrere Tabellen aufteilen oder Spalten nutzen Datenbankprogrammierung 2
Ataria SQLite Werte aus zwei Tabellen zusammenführen Datenbankprogrammierung 8
I H2 - GUI Tool.... sehe aber keine Tabellen Datenbankprogrammierung 2
Zrebna Tabellen-Erzeugung via Hibernate ignoriert 'CascadeType' settings Datenbankprogrammierung 1
H JDBC Tabellen ausgeben Datenbankprogrammierung 8
Kirby.exe Tabellen Zeilen combinen und splitten Datenbankprogrammierung 3
N Hibernate Entitäten bei Selects aus 2 Tabellen Datenbankprogrammierung 7
M Sql Tabellen erstellen Datenbankprogrammierung 3
F Tabellen automatisch erstellen wenn sie nicht existieren Datenbankprogrammierung 6
C Mapping mit Annotations von 2 Tabellen Datenbankprogrammierung 22
W Problem mit Insert in zwei Tabellen Datenbankprogrammierung 8
L Join zweier Tabellen in SQL Datenbankprogrammierung 2
P JSP - Daten aus 2 Tabellen in eine neue Tabelle einfügen Datenbankprogrammierung 1
I Oracle Wie ermitteln, welche Benutzer-(!)Tabellen in einer DB sind? Datenbankprogrammierung 1
H Brauche Hilfe beim Mappen von 3 Tabellen a 1:n mit hbm.xml. Datenbankprogrammierung 34
D JPQL- Query über mehrere Tabellen Datenbankprogrammierung 7
feinperligekohlensaeure MySQL Dynamische Tabellen. Wie kann man es besser machen? Datenbankprogrammierung 3
O HSQLDB Eine Entität, mehrere Tabellen Datenbankprogrammierung 8
O JDBC Daten in zwei Tabellen mit zwei foreach-Schleifen einfügen (insert into) Datenbankprogrammierung 1
D Count(*) auf 2 Tabellen anwenden Datenbankprogrammierung 7
D MySQL Many to Many Tabellen in Java abbilden? Datenbankprogrammierung 4
V SQLite 2 Tabellen vergleichen und nur Unterschiedliche Sätze rausgeben. Datenbankprogrammierung 31
F Tabellen verbinden Datenbankprogrammierung 13
L0MiN Wie kann ich eine bestimmte Seite aus verschiedenen Excel-Tabellen in eine neue Exceldatei kopieren? Datenbankprogrammierung 1
U Kann die Tabellen nicht finden Datenbankprogrammierung 0
D umschalten zwischen verschiedene Tabellen Datenbankprogrammierung 1
U SQLite Für mich etwa komplexe Abfrage via 2 Tabellen Datenbankprogrammierung 5
E Kann man, wenn man in DB2 Tabellen erstellt hat für dessen auch einen Command-File erstellen? Datenbankprogrammierung 1
M JDBC Tabellen mit Boolean Spalten können nicht erstellt werden. DB Updaten - wie? Datenbankprogrammierung 6
T Tabellen von nicht mehr vorhandenen Entities werden generiert Datenbankprogrammierung 0
J MySQL Workbench Tabellen werden verschoben Datenbankprogrammierung 1
M MySQL Tabellen dynamisch erstellen Datenbankprogrammierung 12
T Ähnliche Wrapperklassen + DB-Tabellen Datenbankprogrammierung 1
K HSQLDB Einzelne Tabellen abfragen? Datenbankprogrammierung 4
T Tabellen Alias Datenbankprogrammierung 7
M MySQL Insert über mehrere Tabellen Datenbankprogrammierung 7
J Tabellen in Tabellen finden Datenbankprogrammierung 4
S versionierte Tabellen Datenbankprogrammierung 2
K n:m Tabellen mit Hibernate erstellen Datenbankprogrammierung 1
I Was ist besser: Tabellen oder Spalten Datenbankprogrammierung 1
S MySQL Abfrage über mehrere Tabellen + Einträge werden überschrieben Datenbankprogrammierung 1
M Vergleich von Daten in verschiedenen Tabellen Datenbankprogrammierung 1
C SQL-Statement SELECT über 3 Tabellen Datenbankprogrammierung 5
G 2 Tabellen und ein spezieller Eintrag Datenbankprogrammierung 2
T Fehler beim ausgeben von Tabellen Inhalt Datenbankprogrammierung 9
T 2 Tabellen aus 2 Datenbanken miteinander vergleichen Datenbankprogrammierung 6
I MySQL Vergleich über mehrere Tabellen! Join? Datenbankprogrammierung 6
R PostgreSQL Tabellen hinzufügen, falls nicht vorhanden Datenbankprogrammierung 3
E Tabellen nacheinander auslesen Datenbankprogrammierung 10
D Übersichtliche Zuweisung von Daten in Tabellen Datenbankprogrammierung 17
S 2 Tabellen zu einer zusammenführen, INSERT INTO Fehler Datenbankprogrammierung 5
A Zugriff auf DB-Tabellen mit Objekten Datenbankprogrammierung 3
K SQL tabellen auswahl in jfreechart Datenbankprogrammierung 2
0 Alle Tabellen aus DB lesen Datenbankprogrammierung 2
F Komplexer Tabellen-Join und Ausgabe in Excel Datenbankprogrammierung 17
I Master/Detail Tabellen mit JDBC und Swing Datenbankprogrammierung 10
H Fortlaufende Nummerierung innerhalb mehrerer Tabellen Datenbankprogrammierung 4
G JOIN Abfrage über mehrere Tabellen Datenbankprogrammierung 15
Consuelo Verbinden von zwei Tabellen, foreign key Datenbankprogrammierung 4
O MySQL sql Datei einzelner Tabellen erzeugen (über Java Programm) Datenbankprogrammierung 6
T Kleine Tabellen für schnellere abfragen? Datenbankprogrammierung 3
G SQL Abfrage über mehrere Tabellen Datenbankprogrammierung 28
H SQL Abfrage - zwei tabellen vergleichen. Datenbankprogrammierung 2
R MySQL Unbenutzte Tabellen/Spalten herausfinden Datenbankprogrammierung 7
I mit Java SQL Attribute / Tabellen erstellen Datenbankprogrammierung 17
C SQL String zwei Tabellen vergleichen und gleiche Zeile löschen Datenbankprogrammierung 25
R hibernate Frage zu configFile-Pfad und Groß/Kleinschreibung von Postgres-Tabellen Datenbankprogrammierung 8
J Mit einer Abfrage Worte suchen die in Zwei Tabellen enthalten sind Datenbankprogrammierung 5
F Einzelne Sql- Tabellen sichern (lokal) Datenbankprogrammierung 2
I MySQL - Anzahl Tabellen heraus finden Datenbankprogrammierung 6
B Es werden keine Tupel in Tabellen abgelegt Datenbankprogrammierung 2
S SQL inner join bei >10 Tabellen über 2 Variablen Datenbankprogrammierung 2
S HSQLDB Kopiere Tabellen Datenbankprogrammierung 2
Guybrush Threepwood Nachträgliches Ändern von Variableneigenschaften in (gefüllten) Tabellen Datenbankprogrammierung 3
T DB2 delete/update über 2 Tabellen Datenbankprogrammierung 2
T SQL Abfrage: Zeige alle Values von bestimmten Tabellen Datenbankprogrammierung 11
R Datenbanken, Tabellen normalisieren. Datenbankprogrammierung 1
A Datenbankzugriffe, mehr Tabellen Datenbankprogrammierung 12
oliver1974 JPA, JTable und 2 DB-Tabellen... Datenbankprogrammierung 2
J Starre Datenbankstruktur oder Tabellen bei Bedarf neu erzeugen? Datenbankprogrammierung 5
X Abfrage über 2 Tabellen mit Tücken Datenbankprogrammierung 3
G verbindung 2er Tabellen Datenbankprogrammierung 3
M Auswerten über drei Tabellen Datenbankprogrammierung 2
H Inserts in 2 Tabellen 1:n Datenbankprogrammierung 6
G Mehrere Tabellen abfragen Datenbankprogrammierung 7
M JavaDB/Derby: Tabellen erstellen Datenbankprogrammierung 8
G 2 Tabellen in einer 1:n Verbindung Datenbankprogrammierung 2
M insert in 2 tabellen Datenbankprogrammierung 7
MQue Metadaten für Tabellen in der Datenbank Datenbankprogrammierung 5
D aus mehreren sql tabellen matchen und sortieren Datenbankprogrammierung 6
G 2 Tabellen zusammenfügen wie? Datenbankprogrammierung 8
G Tabellen-Dokument als Datenbank Datenbankprogrammierung 2
S MySQL: Abfrage auf 2 Tabellen durch join Datenbankprogrammierung 5
Y Hibernate - Mapping der Beziehung zwischen 2 Tabellen Datenbankprogrammierung 2
ARadauer tabellen kommentar ausgeben Datenbankprogrammierung 2
S Mysql abfrage über 2 tabellen. Datenbankprogrammierung 10
Y Hibernate - Werte aus 2 Tabellen laden Datenbankprogrammierung 29
S Postgres und die Ursprungstabelle bei vererbten Tabellen Datenbankprogrammierung 4
M Mehrere Tabellen zusammenführen Datenbankprogrammierung 4

Ähnliche Java Themen

Neue Themen


Oben