ORACLE 在触发器中执行带参数动态SQL

CREATE OR REPLACE TRIGGER MTL_SYSTEM_ITEMS_B_T2_IBE


AFTER DELETE
ON MTL_SYSTEM_ITEMS_B
FOR EACH ROW

DECLARE
  plsql_block  VARCHAR2(2000);
BEGIN

  IF ( INV_Item_Util.g_Appl_Inst.IBE <> 0 ) THEN

     plsql_block :=
     ' BEGIN 								'||
     '   IBE_INV_Database_Trigger_PVT.MTL_System_Items_B_Deleted 	'||
     '   (  p_old_inventory_item_id => :item_id 			'||
     '   ,  p_old_organization_id   => :org_id 				'||
     '   ); 								'||
     ' EXCEPTION 							'||
     '   WHEN others THEN 						'||
     '      NULL; 							'||
     ' END;';

     EXECUTE IMMEDIATE plsql_block
       USING IN :old.inventory_item_id
           , IN :old.organization_id ;

  END IF;  -- IBE installed

EXCEPTION
   WHEN others THEN
      NULL;

END MTL_SYSTEM_ITEMS_B_T2_IBE;

ORACLE 在触发器中执行带参数动态SQL
http://localhost:8091//archives/oracle%E5%9C%A8%E8%A7%A6%E5%8F%91%E5%99%A8%E4%B8%AD%E6%89%A7%E8%A1%8C%E5%B8%A6%E5%8F%82%E6%95%B0%E5%8A%A8%E6%80%81sql
作者
Administrator
发布于
2022年11月17日
许可协议