如何使用C#中的Oracle表类型变量调用Oracle Record类型 [英] How to call Oracle Record type with Oracle Table type variable from C# by procedure

查看:132
本文介绍了如何使用C#中的Oracle表类型变量调用Oracle Record类型的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有像这样的Oracle软件包:



I have Oracle package like:

create or replace PACKAGE pkg_OrderProcessingbyUser AS

     TYPE RECORDTBL IS RECORD (
         ROLEID CHAR(19),
         ROLEACTION CHAR(2)
      );
    TYPE people_typ IS TABLE OF RECORDTBL INDEX BY BINARY_INTEGER;

   PROCEDURE Pro_Temp(rolearrayval IN people_typ);
end;





和包裹身体:





And the Package Body as:

create or replace PACKAGE BODY pkg_OrderProcessingbyUser AS
PROCEDURE Pro_Temp(rolearrayval IN people_typ)IS
   BEGIN
      FOR i IN rolearrayval.FIRST .. rolearrayval.LAST
      LOOP
       DBMS_OUTPUT.PUT_LINE(rolearrayval(i).ROLEID||' '||rolearrayval(i).ROLEACTION);
      END LOOP;
   END;
  END pkg_OrderProcessingbyUser;







可以从Oracle Sql编辑器调用,如:






Which can be called from Oracle Sql Editor like:

SET SERVEROUTPUT ON;
 declare 
  people_typ_par pkg_OrderProcessingbyUser.people_typ;
 begin
  people_typ_par(1).ROLEID:='ZZZZ';
  people_typ_par(1).ROLEACTION:='A';
  PKG_ORDERPROCESSINGBYUSER.Pro_Temp(people_typ_par);
end;





到目前为止,每件事情都运行良好,但我们如何使用参数值来调用此过程C#,任何人都可以帮我从C#调用这个场景作为过程调用。



Up to This point every thing is working fine, but how can we call this Procedure with parameter value from C#, can any one help me to call this scenario from C# as procedure call.

推荐答案

这篇关于如何使用C#中的Oracle表类型变量调用Oracle Record类型的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆