实际项目当中经常需要在一个存储过程中调用另一个存储过程返回的游标,本文列举了两种情况讲述具体的操作方法。
之前使用过代码dia调用存储获取ID,但是没有使用存储过程中调用存储过程的结果集。 经过查询发现可以使用游标来实现。 erp_ls_oidgenerate.getoid('BillPrefixRules','DRP',p_ReCursor0); Fetch p...
今天业务支持需要根据物料分类保存后自动同步到编码规则中,需要获取编码规则的ID号码,而ID号码的生成是通过存储过程生成的。
之前使用过代码dia调用存储获取ID,但是没有使用存储过程中调用存储过程的结果集。
经过查询发现可以使用游标来实现。
erp_ls_oidgenerate.getoid('BillPrefixRules','DRP',p_ReCursor0); Fetch p_ReCursor0 into newid,idnum; Insert into BillPrefixRules(PrefixRuleID,PrefixTypeCode,PrefixObjID,PrefixName) select lpad(newid,idnum,'0'),'MaterialCat',p_MaterialSortID,materialsortcode from MaterialSorts where MaterialSorts.materialsortid=p_MaterialSortID;
具体的逻辑就是上面的写法。
通过把游标传递给存储过程,然后对游标进行fetch into 操作。
这个存储过程已经建立好 CREATE OR REPLACE PROCEDURE GetThingsList_s(p_begin IN NVARCHAR2, --时间范围 p_end IN NVARCHAR2, --时间范围 p_type IN NVARCHAR2, --类型 p_source IN NVARCHAR2, --来源 p...
先建一张测试表: create table WWT_TABLE_TEST ( NAMEVARCHAR2(2000), AGENUMBER, SEXVARCHAR2(20), ...创建被调用的存储过程: create or repl