:py:mod:`airflow.providers.google.cloud.transfers.oracle_to_gcs`
================================================================

.. py:module:: airflow.providers.google.cloud.transfers.oracle_to_gcs


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

Classes
~~~~~~~

.. autoapisummary::

   airflow.providers.google.cloud.transfers.oracle_to_gcs.OracleToGCSOperator




.. py:class:: OracleToGCSOperator(*, oracle_conn_id='oracle_default', ensure_utc=False, **kwargs)

   Bases: :py:obj:`airflow.providers.google.cloud.transfers.sql_to_gcs.BaseSQLToGCSOperator`

   Copy data from Oracle to Google Cloud Storage in JSON, CSV or Parquet format.

   .. seealso::
       For more information on how to use this operator, take a look at the guide:
       :ref:`howto/operator:OracleToGCSOperator`

   :param oracle_conn_id: Reference to a specific
       :ref:`Oracle hook <howto/connection:oracle>`.
   :param ensure_utc: Ensure TIMESTAMP columns exported as UTC. If set to
       `False`, TIMESTAMP columns will be exported using the Oracle server's
       default timezone.

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

      

   .. py:attribute:: type_map
      

      

   .. py:method:: query()

      Queries Oracle and returns a cursor to the results.


   .. py:method:: field_to_bigquery(field)

      Convert a DBAPI field to BigQuery schema format.


   .. py:method:: convert_type(value, schema_type, **kwargs)

      Takes a value from Oracle db, and converts it to a value that's safe for
      JSON/Google Cloud Storage/BigQuery.

      * Datetimes are converted to UTC seconds.
      * Decimals are converted to floats.
      * Dates are converted to ISO formatted string if given schema_type is
        DATE, or UTC seconds otherwise.
      * Binary type fields are converted to integer if given schema_type is
        INTEGER, or encoded with base64 otherwise. Imported BYTES data must
        be base64-encoded according to BigQuery documentation:
        https://cloud.google.com/bigquery/data-types

      :param value: Oracle db column value
      :param schema_type: BigQuery data type



