Mělo by to fungovat, pokud použijete Prohlášení
místo CallableStatement
.
Měli byste použít Prohlášení pro všechny DDL, PreparedStatement pro DML a CallableStatement pro volání procedur. Vytvoření procedury je DDL.
CallableStatement se pokusí detekovat a svázat proměnné označené dvojtečkou : takže to je pravděpodobně důvod, proč váš kód nefungoval.