cx_oracle函数返回类型,Python“cx”_Oracle.InterfaceError:not a query“for Oracle函数返回类型curs”...

请帮助我理解我做错了什么,因为如果我执行的过程给出了多行响应,但在python中执行的过程失败了,并且在游标调用函数时出现异常,那么这个值是相同的。在-----Oracle Function----------

FUNCTION get_details (id IN VARCHAR2, actNo IN VARCHAR2, code IN VARCHAR2)

RETURN SYS_REFCURSOR

----Oracle Function Logic----------

OPEN cur_msg_dtls FOR SELECT NAME,VALUE,CODE FROM TABLE

returns cur_msg_dtls

----Python Code--------

import cx_Oracle

if __name__ == '__main__':

con = cx_Oracle.connect('username/pass@host.com:1521/schema')

cur_var = con.cursor()

actNo = 'actNo';

code ='Code';

Id ='Id';

try:

cur_var.callfunc('SCHEMA.PKG.GET_DETAILS',cx_Oracle.CURSOR, (Id,actNo, actCd))

print ("hello")

print(cur_var)

print(type(cur_var))

for row in cur_var:

print(row)

except cx_Oracle.DatabaseError as e:

print (e)

finally:

cur_var.close()

con.close()

pass

----Error--------------

hello

>

Traceback (most recent call last):

File "C:\Users\TestDBPRoc.py", line 26, in

for row in cur_var:

cx_Oracle.InterfaceError: not a query

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值