:py:mod:`airflow.providers.oracle.transfers.oracle_to_oracle`
=============================================================

.. py:module:: airflow.providers.oracle.transfers.oracle_to_oracle


Module Contents
---------------

Classes
~~~~~~~

.. autoapisummary::

   airflow.providers.oracle.transfers.oracle_to_oracle.OracleToOracleOperator




.. py:class:: OracleToOracleOperator(*, oracle_destination_conn_id, destination_table, oracle_source_conn_id, source_sql, source_sql_params = None, rows_chunk = 5000, **kwargs)

   Bases: :py:obj:`airflow.models.BaseOperator`

   Moves data from Oracle to Oracle.


   :param oracle_destination_conn_id: destination Oracle connection.
   :param destination_table: destination table to insert rows.
   :param oracle_source_conn_id: :ref:`Source Oracle connection <howto/connection:oracle>`.
   :param source_sql: SQL query to execute against the source Oracle
       database. (templated)
   :param source_sql_params: Parameters to use in sql query. (templated)
   :param rows_chunk: number of rows per chunk to commit.

   .. py:attribute:: template_fields
      :annotation: :Sequence[str] = ['source_sql', 'source_sql_params']

      

   .. py:attribute:: template_fields_renderers
      

      

   .. py:attribute:: ui_color
      :annotation: = #e08c8c

      

   .. py:method:: execute(self, context)

      This is the main method to derive when creating an operator.
      Context is the same dictionary used as when rendering jinja templates.

      Refer to get_template_context for more context.



