Dovrebbe funzionare se utilizzi un Statement
invece di un CallableStatement
.
Dovresti usare Statement
per tutti i DDL, PreparedStatement
per DML e CallableStatement
per le chiamate di procedura. La creazione di una procedura è DDL.
Un CallableStatement
cercherà di rilevare e associare le variabili identificate da due punti :
quindi questo è probabilmente il motivo per cui il tuo codice non ha funzionato.