Я думаю, что значение переменной bind устанавливается только после завершения блока pl / sql.И это, вероятно, должно завершаться нормально.
Одним из решений является использование max_deptno+10
во вставке из :dept_if
.Лучшее решение - создать другую переменную pl / sql и использовать ее в операторе вставки.
new_dept_id := max_deptno+10;
:dept_id := new_dept_id;
Вы также должны изменить инструкцию INSERT:
INSERT INTO departments (department_name,department_id,location_id)
VALUES(dept_name, new_dept_id, NULL);