title: 'Oracle Data Connector' sidebar_label: 'Oracle Data Connector' description: 'Oracle Data Connector Documentation' tags:
The Oracle Data Connector enables SQL queries on data stored in Oracle databases, including on-premises instances, Oracle Cloud User-Managed Databases, and Oracle Cloud Autonomous Databases (ADB).
:::warning[Limitations]
INTERVAL YEAR TO MONTH (Code 182), INTERVAL DAY TO SECOND (Code 183), UROWID (Code 208), BFILE (Code 114), JSON (Code 119).:::
fromThe from field takes the form oracle:"schema_name"."table_name" where both schema and table names should be quoted to handle case sensitivity properly.
Example:
nameThe dataset name. This will be used as the table name within Spice.
Example:
paramsThe Oracle data connector can be configured by providing the following params. Use the secret replacement syntax to load the secret from a secret store, e.g. ${secrets:MY_ORACLE_PASSWORD}.
| Parameter Name | Description |
|---|---|
oracle_connection_string | The connection string to use to connect to the Oracle server. This can be a TNS alias from tnsnames.ora for local mTLS/Wallet connections or an Easy Connect string. |
oracle_host | The hostname or IP address of the Oracle Database instance. Required when not using oracle_connection_string. |
oracle_port | Optional. The port of the Oracle Database server. Default: 1521 |
oracle_username | The Oracle username. Required. |
oracle_password | The password to connect with. Required. |
oracle_service_name | The Oracle Database service name to connect to. Default: XEPDB1 |
oracle_wallet_sso_cert | The base64-encoded cwallet.sso (wallet auto-login certificate) to use for mTLS authentication with Oracle Cloud. |
The table below shows the Oracle data types supported, along with the type mapping to Apache Arrow types in Spice.
| Oracle Type | Arrow Type |
|---|---|
ROWID | Utf8 |
CHAR | Utf8 |
NCHAR | Utf8 |
VARCHAR2 | Utf8 |
NVARCHAR2 | Utf8 |
LONG | Utf8 |
CLOB | LargeUtf8 |
NCLOB | LargeUtf8 |
NUMBER | for integer types (scale=0, precision≤18), otherwise |
:::note
TIMESTAMP WITH LOCAL TIME ZONE value is retrieved as a UTC time value.:::
If your Oracle Cloud Autonomous Database wallet folder is available locally, specify its path using the oracle_wallet parameter. Set the oracle_connection_string to the TNS alias defined in your wallet's tnsnames.ora file.
Example:
If your Oracle Cloud Autonomous Database wallet folder is not available locally, provide the base64-encoded wallet auto-login (SSO) certificate (cwallet.sso) using the oracle_wallet_sso_cert parameter. Set the oracle_connection_string to the Easy Connect string from the Database connection section.
To generate a base64-encoded wallet certificate for use as a secret:
The Oracle data connector requires the Oracle Instant Client or Oracle Database Client libraries to be installed on the system where Spice is running. Follow the Oracle installation guide for your platform.
Spice integrates with multiple secret stores to help manage sensitive data securely. For detailed information on supported secret stores, refer to the secret stores documentation. Additionally, learn how to use referenced secrets in component parameters by visiting the using referenced secrets guide.
oracle_walletSpecifies the Oracle wallet location used to save the provided mTLS certificate (oracle_wallet_sso_cert) or retrieve an existing/pre-downloaded certificate. |
Int64Decimal128FLOAT | Float32 for precision≤24, otherwise Float64 |
BINARY_FLOAT | Float32 |
BINARY_DOUBLE | Float64 |
BOOLEAN | Boolean |
DATE | Date32 |
TIMESTAMP | Timestamp(Second) for precision=0, otherwise Timestamp(Nanosecond) |
TIMESTAMP WITH TIME ZONE | Timestamp(Second, UTC) for precision=0, otherwise Timestamp(Nanosecond, UTC) |
TIMESTAMP WITH LOCAL TIME ZONE | Timestamp(Second, UTC) for precision=0, otherwise Timestamp(Nanosecond, UTC) |
RAW | Binary |
LONG RAW | Binary |
BLOB | LargeBinary |