Это должно работать нормально.Например, следующее возвращает то же количество записей, что и без where
условия
EXEC :arg_emp_name := '%%';
SELECT * FROM ALL_TABLES WHERE TABLE_NAME LIKE :arg_emp_name
Если вы добавите больше в строку
EXEC :arg_emp_name := '%ABC%';
SELECT * FROM ALL_TABLES WHERE TABLE_NAME LIKE :arg_emp_name
только таблицы с ABC в их имени возвращаются
Однако я хотел бы заметить, что между :
и arg_emp_name
нет пробела, наличие которого приводит к ошибке
Error starting at line 4 in command:
SELECT * FROM ALL_TABLES WHERE TABLE_NAME LIKE : arg_emp_name
Error report:
SQL Error: ORA-01008: not all variables bound
01008. 00000 - "not all variables bound"
*Cause:
*Action: