SQLExecuteQueryOperator 連線 Oracle

使用 SQLExecuteQueryOperatorOracle 資料庫中執行 Oracle 命令。

注意

之前使用 OracleStoredProcedureOperator 執行此類操作。棄用後已被移除。請改用 SQLExecuteQueryOperator

使用運算子

使用 conn_id 引數連線到您的 Oracle 例項,連線元資料結構如下:

Oracle Airflow 連線元資料

引數

輸入

主機: 字串

Oracle 資料庫主機名

Schema: 字串

預設執行 SQL 操作的 Schema

登入名: 字串

Oracle 資料庫使用者

密碼: 字串

Oracle 資料庫使用者密碼

埠: int

Oracle 資料庫埠 (預設: 1521)

Extra: JSON

附加連線配置,例如 DSN 字串: {"dsn": "(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=<hostname>)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=<service_name>)))"}

以下是使用 SQLExecuteQueryOperator 連線 Oracle 的示例

tests/system/oracle/example_oracle.py


    # Example of creating a task that calls a common CREATE TABLE sql command.
    create_table_oracle_task = SQLExecuteQueryOperator(
        task_id="create_table_oracle",
        sql=r"""
            BEGIN
                EXECUTE IMMEDIATE '
                CREATE TABLE employees (
                    id NUMBER GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY,
                    name VARCHAR2(50),
                    salary NUMBER(10, 2),
                    hire_date DATE DEFAULT SYSDATE
                )';
            END;
        """,
    )

參考

更多資訊請參考

注意

透過 SQLExecuteQueryOperator() 提供的引數優先於透過 Airflow 連線元資料設定的引數(例如 schemaloginpassword 等)。

此條目有幫助嗎?