Несколько возможных причин возникновения ошибки Missing IN or OUT parameter в JDBC:
- Использование драйвера Oracle JDBC версии 10g или выше. 1 В таких драйверах добавлена функция привязки параметров по имени. 1 В результате строки, например ':old', интерпретируются драйвером JDBC как переменные привязки. 1 Подготовленный оператор и вызываемый оператор заранее проверяют, что для всех переменных привязки предоставлены значения. 1 Если для ':old' не предоставлено значение, возникает ошибка. 1
- Отсутствие значений для параметров. 3 Например, если указать количество параметров (знаки вопроса), но не предоставить им значения. 3
Для решения проблемы рекомендуется создать подготовленный оператор, а затем установить значения параметров. 3