Oracle中立即执行字符串及传入变量


立即执行跟着的方法,并把当前的变量用USING 传进去。

EXECUTE IMMEDIATE
         'BEGIN
             Work_Order_Req_Line_Util_API.Create_Po_Allowed(:requisition_, :line_no_, :release_no_);
          END;'
      USING requisition_no_, line_no_, release_no_;

---------------------------------------------------------------------------------------------------

stmt_ := 'BEGIN
                      Customer_Order_Pur_Order_API.Modify_From_Purchase (:requisition_no,
                                                                         :line_no,
                                                                         :release_no,
                                                                         :order_no,
                                                                         :assg_line_no,
                                                                         :assg_release_no);
                   END;';
         -- ifs_assert_safe JaJalk 20060125
         EXECUTE IMMEDIATE stmt_
            USING IN requisition_no_,
                  IN line_no_,
                  IN release_no_,
                  IN order_no_,
                  IN assg_line_no_,
                  IN assg_release_no_;

---------------------------------------------------------------------------------------------------------

 EXECUTE IMMEDIATE
         'BEGIN
            :activity_seq := active_separate_api.get_activity_seq(:wo_no);
            :activity_state := Activity_API.Get_State(:activity_seq);
            :activity_no := Activity_API.Get_Activity_No(:activity_seq);
          END;'
         USING
         IN OUT activity_seq_,
         IN wo_no_,
         OUT activity_state_,
         OUT activity_no_;

相关内容