如何用比较类型returnType和Boolean输入调用cx_Oracle中的函数?

2024-05-16 04:30:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图从DBMS_COMPARISON package调用COMPARE function

我首先通过

import cx_Oracle

host = host
service_name = service_name
port = port
password = password
username = username


dsn = cx_Oracle.makedsn( host, port,
                         service_name=service_name )
db = cx_Oracle.connect(username, password, dsn )

keyword_parameters = {
        'comparison_name':'my_comparison',
        'schema_name':'my_schema',      
        'object_name':'table_name',
        'dblink_name':'db_link'
}
cur.callproc('DBMS_COMPARISON.CREATE_COMPARISON', keywordParameters = keyword_parameters)

现在我想调用函数DBMS_COMPARISON.COMPARE

^{pr2}$

我试过了

^{3}$

或者其他的变体。我很难理解如何设置callfunc中指定的returnType,以及如何为DBMS_COMPARISON.COMPARE函数调用设置所需的布尔值


Tags: namehostdbportserviceusernamepasswordkeyword
1条回答
网友
1楼 · 发布于 2024-05-16 04:30:42

这是一个简单的例子,对我来说,不管怎样!关键是将“bool”类型传递给cursor.callfunc(). 在

create function IsNumber (a_Value varchar2) return boolean is
    t_Value number;
begin
    begin
        t_Value := to_number(a_Value);
        return true;
    exception
    when others then
        return false;
    end;
end;
/

等效的Python代码如下:

^{pr2}$

这将输出值

是的 假

相关问题 更多 >