Datenbankabfrage via Java mit hsqldb: eigene Tabelle nicht gefunden?

...komplette Frage anzeigen

2 Antworten

Hallo gutjmich, welche Exception wird denn geworfen? Das ist notwendig, um zur Fehleranalyse etwas genaueres zu sagen.

Du kannst den Source-Code auch auf pastebin hinterlassen und hier verlinken.

BaumeisterSepp 23.03.2017, 13:32

Die Fehlermeldung sagt, dass du entweder nicht ausreichend Rechte hast die Tabelle zu lesen oder diese nicht existiert.

Du sagst "Die Tabelle heißt definitiv users."

Annahme. Die Authentifizierung des DB Nutzer und Passwort sind ok, dann versuche dann mal folgendes

GRANT SELECT, UPDATE, INSERT ON TABLE USERS TO <DEIN DB Nutzer>;

Siehe auch http://stackoverflow.com/questions/32126314/hsqldb-how-to-grant-privileges

0

Der Code ist nicht so interessant, intertessant wäre die Fehlermeldung (die "gleiche Fehlermeldung" gibt es nicht ...)

gutjmich 23.03.2017, 13:13

Oh, den habe Ich in meiner Aufregung vergessen. :D  "java.sql.SQLSyntaxErrorException: user lacks privilege or object not found: USERS"

0
Tschoo 23.03.2017, 13:22
@gutjmich

Also, so richtig helfen kann ich dir hierbei aber nicht.

Deinem Benutzer fehlen entweder Privilegien oder das Object, das "Ding" (kann Tabelle, Reihe, alles mögliche sein) gibt es nicht.

Versuche es mal mit einem anderen Namen, ich kenne hsqldb zwar nicht, aber USER, oder USERS kann auch eine Verwaltungstabelle der Datenbank sein (die der Benutzer), da du aber diese Tabelle selbst erstellt hast (so habe ich es wohl gelesen), benenne sie anders. Also "Create TABLE myUsers ...."

1
gutjmich 23.03.2017, 13:36
@Tschoo

Ok, ich habe jetzt eine neue Tabelle erstellt. Aber das Problem existiert noch immer.

Mal angenommen es liegt doch an den Rechten, wie lasse Ich ihm den die Rechte zu? Denn hinterlegt ist, dass die Tabelle von dem User gelesen und bearbeitet werden darf. Oder hat Eclipse ein Problem damit, die Rechte zu "lesen"?

0
Tschoo 23.03.2017, 18:09
@gutjmich

Das kann ich dir nicht sagen ... ich arbeite mit mysql und hatte damit nie Schwierigkeiten -- aber es kann schon sein, du brauchst aber zwischen Betriebssystem und Datenbank noch etwas, eine Art Treiber, um besondere Datenbanken (z.B. ISAM-DBs) zu lesen -- für mysql ist dies seit (nicht schon immer) integriert, wenn du aber eher eine "exotische" Datenbank hast ... , aber dies müsste beim installieren mitgemacht worden sein, vielleicht ist dieser Prozess einfach nicht gestartet??

0

Was möchtest Du wissen?