Я читал по именованным параметрам. У меня на самом деле есть 2 вопроса:Сохраненная процедура с именованными параметрами и курсором
Если используется синтаксис именованных параметров: p_rank => 5
, могу ли я передать только то, что мне нужно. Скажем, процедура принимает 5 параметров, но для этого вызова я хочу только передать 1 параметр.
Могу ли я: exec procedure_name(p_rank => 5)
и не беспокоиться о других 4?
Теперь с этим, как я могу использовать именованные параметры, которые имеют выход REF CURSOR?
exec customer_package.retrieve_data (
p_rank => 5,
p_value_score => p_value,
p_momentum_score => p_momentum,
p_growth_score => p_growth,
p_data => p_output);
p_data фактически REF CURSOR ....... поэтому, если вы звоните с помощью позиционных параметров из SQL Plus можно просто определить переменную как REF_CURSOR и распечатать его. Но это делается в хранимой процедуре, вызывая другую хранимую процедуру, которая должна вернуть REF CURSOR .......
Да, вся идея именованных параметров заключается в том, чтобы предоставить вам только те, которые вам нужны, если другие параметры не требуются. –