Oracle 运算符¶
Oracle 连接类型提供与 Oracle 数据库的连接。
在 Oracle 数据库中执行存储过程¶
要在 Oracle 数据库中执行存储过程,请使用 OracleStoredProcedureOperator。
假设数据库中存在如下所示的存储过程
CREATE OR REPLACE PROCEDURE TEST_PROCEDURE (val_in IN INT, val_out OUT INT) AS BEGIN val_out := val_in * 2; END; /
此存储过程接受单个整数参数 val_in,并输出单个整数参数 val_out。可以使用 OracleStoredProcedureOperator 并使用位置列表传递参数来实现以下调用
    opr_stored_procedure_with_list_input_output = OracleStoredProcedureOperator(
        task_id="opr_stored_procedure_with_list_input_output",
        oracle_conn_id="oracle",
        procedure="TEST_PROCEDURE",
        parameters=[3, int],
    )
或者,也可以使用字典通过关键字参数传递参数。
    opr_stored_procedure_with_dict_input_output = OracleStoredProcedureOperator(
        task_id="opr_stored_procedure_with_dict_input_output",
        oracle_conn_id="oracle",
        procedure="TEST_PROCEDURE",
        parameters={"val_in": 3, "val_out": int},
    )
如果请求 xcom push,输入和输出都将传递给 xcom。
有关存储过程执行的更多信息,请参阅 oracledb 文档。