我有一个pl-sql包,其中包含一个返回ref_cursor对象的函数。

下面是我的python代码,我在其中尝试调用该函数temp=""

con = get_connection() //get connection will return connection object

sql = 'values function_name(?)'

stmt = ibm_db.prepare(con, sql)

ibm_db.bind_param(stmt, 1, temp, ibm_db.SQL_PARAM_OUTPUT)

ibm_db.execute(stmt)

在执行这个python代码时,我得到以下错误:

^{pr2}$

如何从python执行这个函数并读取这个游标变量?在

编辑:

实际上,我正在尝试将我的Oracle数据库迁移到DB2。

在Oracle中,我有一个PL/SQL包,其中包含返回sys_refcursor对象的函数。在FUNCTION my_function(l_parameter IN NUMBER) RETURN SYS_REFCURSOR IS

l_sql1 VARCHAR2(4000):= Select query1;

l_sql2 VARCHAR2(4000):= Select query2;

r_refcursor SYS_REFCURSOR;

BEGIN

IF l_parameter = 1 THEN

OPEN r_refcursor for l_sql1;

ElSE

OPEN r_refcursor for l_sql2;

END IF;

RETURN r_refcursor;

END my_function;

我们需要修改函数吗?

如何从db2和python调用这个函数?在

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐