将多维数组发送到存储过程cx_Oracle

时间:2016-12-21 17:53:16

标签: python cx-oracle

Code Oracle:

 Procedure example
    (
    p_Cod_Rspta             out varchar2             ,
    p_error_Rspta           out varchar2             ,
    p_ID_USUAR              in   Number              ,
    p_reg_Aplic             in   SYS_REFCURSOR       ,
    p_reg_Rta_Excel         out  SYS_REFCURSOR        
    )

这是我想要发送调用过程示例

的引用游标的地方
Code Python:
    cur = con.cursor()
    cursor= cur.var(cx_Oracle.CURSOR)
    cur.callproc("package.example",[cur.var(cx_Oracle.STRING),cur.var(cx_Oracle.STRING),ID_U,cursor,cur.var(cx_Oracle.CURSOR)]

1 个答案:

答案 0 :(得分:1)

您无法将一组数据作为游标传递。必须从数据库中执行的查询中填充游标中的数据。但是,您可以将一组记录传入PL / SQL。请注意,这仅适用于带有cx_Oracle 5.3的Oracle 12c。