Zugriff auf eine bestimmte Tabelle

Alle Fragen und Probleme zu den externen Schnittstellen wie ODBC, JDBC, ...
DataMiner
Neuer Benutzer
Beiträge: 6
Registriert: Di 26. Apr 2016, 00:01

Zugriff auf eine bestimmte Tabelle

Beitrag von DataMiner » Di 26. Apr 2016, 00:08

Hallo,

im Rahmen meiner Bachelorarbeit benötige ich den Zugriff auf eine bestimmte Tabelle einer PostgreSQL Datenbank. Ich benutze dazu Knime. Ich kann zur Database connecten und kann auch die Metadaten aufrufen, allerdings finde ich die entsprechende Tabelle nicht. Die gesamte Datenbank wurde mit Hilfe eines anderen Programms angelegt. Kann es sein, dass bestimmte Tabellen verborgen sind oder gibt es noch andere Möglichkeiten um Zugriff auf einzelne Tabellen zu bekommen neben den Metadaten?

Vielen Dank und viele Grüße

Gisman
Erfahrener Benutzer
Beiträge: 1105
Registriert: Fr 20. Jan 2006, 15:30
Wohnort: Pfalz
Kontaktdaten:

Re: Zugriff auf eine bestimmte Tabelle

Beitrag von Gisman » Di 26. Apr 2016, 06:56

Guten Morgen!

Ich hkenne Knime nicht und weiß nicht wie es funktioniert. Aber du kannst dich prinzipiell mit psql mit der Datenbank verbinden und schauen ob du so sehen kannst was du suchst. Oder du nutzt pgAdmin, das zeigt dir alles, auch wenn du nichts danmit tun darfst.

Gruß Uwe

DataMiner
Neuer Benutzer
Beiträge: 6
Registriert: Di 26. Apr 2016, 00:01

Re: Zugriff auf eine bestimmte Tabelle

Beitrag von DataMiner » Di 26. Apr 2016, 08:18

Guten Morgen!

pgAdmin habe ich auch schon ausprobiert, ich finde die Tabelle einfach nicht... in der Software selber ist sie vorhanden, aber über externe Schnittstellen taucht sie nicht auf. Sitze da schon 3 Tage dran, diese Tabelle zu finden. Ohne sie komme ich nicht weiter. Wenn jemand noch einen Vorschlag hat, wäre ich ihm sehr verbunden.

Viele Grüße
Stefan

akretschmer
Erfahrener Benutzer
Beiträge: 7511
Registriert: So 29. Okt 2006, 13:35
Wohnort: Kaufbach, Sachsen, Germany, Germany
Kontaktdaten:

Re: Zugriff auf eine bestimmte Tabelle

Beitrag von akretschmer » Di 26. Apr 2016, 08:53

Möglicherweise steckt diese nicht im Public-Schema, sprich, Du suchst an der falschen Stelle. Schau mal in pg_class, da sollte sie sein. Was auch noch sein kann: Groß- Kleinschreibung. Per Default ist das egal, aber wenn Du anfängst, Tabellen mit großen Buchstaben zu erstellen (gequotet), dann mußt Du das beibehalten.
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

akretschmer
Erfahrener Benutzer
Beiträge: 7511
Registriert: So 29. Okt 2006, 13:35
Wohnort: Kaufbach, Sachsen, Germany, Germany
Kontaktdaten:

Re: Zugriff auf eine bestimmte Tabelle

Beitrag von akretschmer » Di 26. Apr 2016, 08:59

Nachtrag:

select c.relname, n.nspname from pg_class c left join pg_namespace n on c.relnamespace=n.oid where relname = 'foo' and relkind='r';

Statt 'foo' den korrekten Namen der Tabelle, dann bekommst das Schema genannt.
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

DataMiner
Neuer Benutzer
Beiträge: 6
Registriert: Di 26. Apr 2016, 00:01

Re: Zugriff auf eine bestimmte Tabelle

Beitrag von DataMiner » Di 26. Apr 2016, 10:23

Vielen Dank erstmal für die Hilfe. Leider kenne ich den Namen der Tabelle nicht. Die Tabelle ist Teil einer Software mit der ich arbeite. Ich habe mal die pgAdmin Ansicht hochgeladen. Sowohl die Tabellen unter PostgreSQL als auch unter Public bin ich alle durchgegangen und dort ist sie nicht zu finden.

http://img5.fotos-hochladen.net/uploads ... ex928g.jpg

castorp
Erfahrener Benutzer
Beiträge: 1069
Registriert: Sa 27. Jun 2009, 22:24
Wohnort: Bayern

Re: Zugriff auf eine bestimmte Tabelle

Beitrag von castorp » Di 26. Apr 2016, 12:41

Wenn Du den Namen der Tabelle nicht kennst, woher weißt Du dann, dass Du sie gefunden bzw. nicht gefunden hast?
A SQL query walks into a bar and sees two tables. He walks up to them and says 'Can I join you?'

DataMiner
Neuer Benutzer
Beiträge: 6
Registriert: Di 26. Apr 2016, 00:01

Re: Zugriff auf eine bestimmte Tabelle

Beitrag von DataMiner » Di 26. Apr 2016, 13:20

Ich habe mich an den spalten orientiert und konnte die entsprechenden Spalten bei keiner Tabelle finden. Zudem müsste "Opponents" in dem Namen vorkommen

castorp
Erfahrener Benutzer
Beiträge: 1069
Registriert: Sa 27. Jun 2009, 22:24
Wohnort: Bayern

Re: Zugriff auf eine bestimmte Tabelle

Beitrag von castorp » Di 26. Apr 2016, 13:34

Und woher hast Du das mit dem "Opponents"? Könnte doch auch ein Tabellen-Alias sein:

Code: Alles auswählen

select opponents.id
from some_table as opponents
A SQL query walks into a bar and sees two tables. He walks up to them and says 'Can I join you?'

Gisman
Erfahrener Benutzer
Beiträge: 1105
Registriert: Fr 20. Jan 2006, 15:30
Wohnort: Pfalz
Kontaktdaten:

Re: Zugriff auf eine bestimmte Tabelle

Beitrag von Gisman » Di 26. Apr 2016, 16:35

Die Spaltennamen müssen nicht mit denen in der Anwendung übereinstimmen. Versuche doch einen Wert in der Anwendung zu ändern und suche dann die Tabelle wo er steht.

Antworten