通过 运行 动态查询插入 BULK COLLECT
Insert into BULK COLLECT by running a dynamic query
我想从 运行 插入一个动态查询到 table。我怎样才能实现它。以下是我正在尝试的。
VARIABLE a REFCURSOR;
DECLARE
PROCEDURE Pr_Get_VARIANCE_REPORT (p_billing_system_id IN NUMBER ,
p_Sorting IN Varchar2,
po_Cur_Out OUT SYS_REFCURSOR)
IS
v_query1 varchar2(3000);
v_query1 := 'Select Plan_No, Plan_name from TB_BISBILL
where Billing_System_ID = p_billing_system_id ORDER BY '
|| p_Sorting ;
SELECT PLAN_NO, Plan_name
bulk collect into l_invoices
from (I need to insert by executing the v_query1).
我该怎么做。
在这里,由于排序是由用户提供的,所以<我必须按用户提供的任何列名进行排序。
你可以简单地写:
execute immediate v_query1 bulk collect into l_invoices;
我想从 运行 插入一个动态查询到 table。我怎样才能实现它。以下是我正在尝试的。
VARIABLE a REFCURSOR;
DECLARE
PROCEDURE Pr_Get_VARIANCE_REPORT (p_billing_system_id IN NUMBER ,
p_Sorting IN Varchar2,
po_Cur_Out OUT SYS_REFCURSOR)
IS
v_query1 varchar2(3000);
v_query1 := 'Select Plan_No, Plan_name from TB_BISBILL
where Billing_System_ID = p_billing_system_id ORDER BY '
|| p_Sorting ;
SELECT PLAN_NO, Plan_name
bulk collect into l_invoices
from (I need to insert by executing the v_query1).
我该怎么做。
在这里,由于排序是由用户提供的,所以<我必须按用户提供的任何列名进行排序。
你可以简单地写:
execute immediate v_query1 bulk collect into l_invoices;