Вы должны были проверить это сами так:
mysql> create procedure proc1 (IN p_parm1 int) begin
if p_parm1 is null then
set p_parm1 = -1;
end if;
select p_parm1;
end$$
Query OK, 0 rows affected (0.02 sec)
mysql> call proc1(123)$$
+---------+
| p_parm1 |
+---------+
| 123 |
+---------+
1 row in set (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
mysql> call proc1(null)$$
+---------+
| p_parm1 |
+---------+
| -1 |
+---------+
1 row in set (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Таким образом, ответ - да, вы можете изменить значение входа. В вашем примере вы фактически присваиваете входному аргументу значение по умолчанию, если оно пустое.