Hallo,
ich versuche einen plsql Befehl aus meinem Java Programm an meine Oracle DB zu schicken aber in meinem Try Catch geht er mir immer in die SQLException...
Hier mein Code:
wenn ich den plsql String nehme den ich mir im println ausgeben lasse und ihn auf der Datenbank teste funktioniert es wunderbar, es dürfte also nicht am plsql String liegen!
ich versuche einen plsql Befehl aus meinem Java Programm an meine Oracle DB zu schicken aber in meinem Try Catch geht er mir immer in die SQLException...
Hier mein Code:
Java:
conn = DriverManager.getConnection("jdbc:oracle:thin:@xxxxx.xxxxx.xxxx:1521:xxxx", "xxxxx", "xxxxxx");
conn.setAutoCommit(false);
// JOptionPane.showMessageDialog(null, conn) ; // Testmessage
Statement stmt = conn.createStatement();
try {
String plsql =
"DECLARE " +
"N_JOBID_SEQ NUMBER; " +
"S_OWNER VARCHAR2(30) := 'Testuser'; " +
"S_DESCRIPTION VARCHAR2(50) := 'desctu'; " +
"BEGIN " +
"SELECT IDENTIFIER.NEXTVAL INTO N_JOBID_SEQ FROM DUAL; " +
"INSERT INTO JOB(IDENTIFIER,DESCRIPTION,OWNER,CREATION,JOBCLASS) VALUES (N_JOBID_SEQ, S_DESCRIPTION, S_OWNER, SYSDATE, 1); " +
"LTT_ADMIN.CREATEJOB (N_JOBID_SEQ, FALSE); END; " +
"/ " +
"COMMIT; ";
System.out.println(plsql);
CallableStatement cs = conn.prepareCall(plsql);
//cs.executeQuery(plsql);
cs.execute();
JOptionPane.showMessageDialog(null, "Job angelegt; Testmsg") ;
} catch (SQLException e) {
System.out.println(stmt + "tetetete");
JOptionPane.showMessageDialog(null, "SQL Fehler beim Job anlegen") ;
} finally {
conn.close();
}
wenn ich den plsql String nehme den ich mir im println ausgeben lasse und ihn auf der Datenbank teste funktioniert es wunderbar, es dürfte also nicht am plsql String liegen!