1

我需要根据命名参数调用存储过程。

RMFF_RETRO_ACTIVE_CALCS_SP(p_region_cd,p_plant_cd,
p_supplier_nbr,p_matrl_nbr,'','','N',p_user_id,p_err_cd,p_err_msg);

在这个我需要使用命名参数。

但 myp_region_cd与被调用过程同名

p_region_cd=>p_region_cd.

这个怎么做?我只需要在第 5,6 位命名

请建议我如何打电话

4

1 回答 1

0

使用

p_region_cd=>p_region_cd

应该不是问题。例如下面的块运行得很好。

declare 
  po_next_stmt_date number(8);
  po_next_due_date  number(8);
  po_rsp_code       varchar2(3);
  po_rsp_dscr       varchar2(256);

begin
  oc_eoc.SP_EOC_GET_NEXT_STMT_DATE(pi_last_eoc_date => 20130210,
                                   pi_new_cycle_code => '02',
                                   po_next_stmt_date => po_next_stmt_date,
                                   po_next_due_date => po_next_due_date,
                                   po_rsp_code => po_rsp_code,
                                   po_rsp_dscr => po_rsp_dscr);
end;

您必须注意的是,如果您从命名参数开始,那么您必须继续这样做。以下也很好:

oc_eoc.SP_EOC_GET_NEXT_STMT_DATE(20130210,
                                 '02',
                                 po_next_stmt_date => po_next_stmt_date,
                                 po_next_due_date => po_next_due_date,
                                 po_rsp_code => po_rsp_code,
                                 po_rsp_dscr => po_rsp_dscr); 

但这不是:

oc_eoc.SP_EOC_GET_NEXT_STMT_DATE(pi_last_eoc_date => 20130210,
                                 '02',
                                 po_next_stmt_date => po_next_stmt_date,
                                 po_next_due_date => po_next_due_date,
                                 po_rsp_code => po_rsp_code,
                                 po_rsp_dscr => po_rsp_dscr);  
于 2013-02-10T14:40:44.920 回答