2012-12-21 9 views
6

Was ist die richtige Syntax oder was sind die richtigen Schritte für Erstellen eines Schemas in DB2 mit JDBC?create db2 schema mit jdbc

Wenn create schema test1 oder create schema test1 authorization db2admin als db2admin läuft, konsequent DB2 SQL Error: SQLCODE=-552, SQLSTATE=42502, SQLERRMC=DB2ADMIN;CREATE SCHEMA, DRIVER=3.64.106 ich

Der exakt gleiche Befehl funktioniert die DB2-Kommandozeilen-Tools Fein verwenden.

Antwort

6

ich es gefunden.

Es stellt sich heraus, dass DB2 Express-C die Berechtigung DBADM standardmäßig nicht für db2admin erteilt.

Dies kann durch den Anschluss an die DB fixiert werden und dann

GRANT DBADM ON DATABASE to db2admin 

Dank Ian Bjorhovde Ausstellung der Inspiration Funke für die Bereitstellung!

1

Sieht aus wie es nicht eine Frage der Syntax aber die Authentifizierung ist, müssen Sie die Anmeldeinformationen überprüfen, die Sie über JDBC vorbei:

-552 Genehmigung Nummer nicht über die Berechtigung, die Operation Operation auszuführen

http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=%2Fcom.ibm.db2z9.doc.codes%2Fsrc%2Ftpc%2Fn552.htm

+0

Wie gesagt, der Benutzer ist DB2Admin und hat alle Rechte. Derselbe Benutzer kann die Anweisung mit den DB2-Befehlszeilentools ohne Probleme ausführen. –

+0

Ich würde versuchen, die Ursache einzugrenzen, können Sie einen anderen DB2-Client verwenden und versuchen, eine DDL mit denselben Anmeldeinformationen auszuführen? http://java-source.net/open-source/sql-clients – theMarceloR

+1

Schon getan. Ich habe auch 3 verschiedene Versionen des JDBC-Treibers ausprobiert: einen älteren und die neuesten jdbc3- und jdbc4-Treiber. Kein Glück. –