Oracle Examples
Comprehensive examples for exporting data from Oracle databases.
Connection Types
Oracle exports support multiple connection types:
- oraodp: Native Oracle Data Provider (recommended)
- oledb: Using Oracle OLEDB Provider (OraOLEDB)
- odbc: Using ODBC DSN
Single-threaded Export
Simple export without parallelization.
- Oracle Data Provider
- OLEDB Provider
.\\FastTransfer.exe `
--connectiontype "oraodp" `
--server "localhost:1521/ORCLPDB1" `
--user "system" `
--password "password" `
--query "SELECT * FROM customers WHERE ROWNUM <= 1000" `
--directory "C:\temp" `
--fileoutput "oracle_customers.csv" `
--decimalseparator "." `
--delimiter "|" `
--dateformat "yyyy-MM-dd HH:mm:ss" `
--encoding "UTF-8" `
--parallelmethod "None"
.\\FastTransfer.exe `
--connectiontype "oledb" `
--provider "OraOLEDB.Oracle" `
--server "localhost:1521/ORCLPDB1" `
--user "system" `
--password "password" `
--query "SELECT * FROM customers WHERE ROWNUM <= 1000" `
--directory "C:\temp" `
--fileoutput "oracle_customers.csv" `
--decimalseparator "." `
--delimiter "|" `
--dateformat "yyyy-MM-dd HH:mm:ss" `
--encoding "UTF-8" `
--parallelmethod "None"
Parallel Export - Rowid Method
Oracle-specific parallel export using physical row identifier (ROWID).
The Rowid method is unique to Oracle and uses the physical row identifier for parallel data distribution. This is very efficient for full table exports and does not require a specific distribute key column.
Full table export:
.\\FastTransfer.exe `
--connectiontype "oraodp" `
--server "localhost:1521/ORCLPDB1" `
--user "system" `
--password "password" `
--sourceschema "SYSTEM" `
--sourcetable "ORDERS" `
--directory "C:\temp" `
--fileoutput "oracle_orders.csv" `
--decimalseparator "." `
--delimiter "|" `
--dateformat "yyyy-MM-dd HH:mm:ss" `
--encoding "UTF-8" `
--parallelmethod "Rowid" `
--paralleldegree 8 `
--merge "False" `
--runid "oraodp_to_csv_parallel8_rowid"
With query filter:
.\\FastTransfer.exe `
--connectiontype "oraodp" `
--server "localhost:1521/ORCLPDB1" `
--user "system" `
--password "password" `
--query "SELECT * FROM SYSTEM.ORDERS WHERE order_date >= TO_DATE('2024-01-01', 'YYYY-MM-DD')" `
--directory "C:\temp" `
--fileoutput "oracle_orders_2024.csv" `
--decimalseparator "." `
--delimiter "|" `
--dateformat "yyyy-MM-dd HH:mm:ss" `
--encoding "UTF-8" `
--parallelmethod "Rowid" `
--paralleldegree 8 `
--merge "False" `
--runid "oraodp_to_csv_parallel8_rowid_filtered"
Parallel Export - Random Method
Export using Random distribution with modulo operation.
.\\FastTransfer.exe `
--connectiontype "oraodp" `
--server "localhost:1521/ORCLPDB1" `
--user "system" `
--password "password" `
--sourceschema "SYSTEM" `
--sourcetable "ORDERS" `
--directory "C:\temp" `
--fileoutput "oracle_orders_random.csv" `
--decimalseparator "." `
--delimiter "|" `
--dateformat "yyyy-MM-dd HH:mm:ss" `
--encoding "UTF-8" `
--parallelmethod "Random" `
--distributekeycolumn "order_id" `
--paralleldegree 8 `
--merge "False" `
--runid "oraodp_to_csv_parallel8_random"
Parallel Export - DataDriven Method
Export using DataDriven distribution based on distinct column values.
.\\FastTransfer.exe `
--connectiontype "oraodp" `
--server "localhost:1521/ORCLPDB1" `
--user "system" `
--password "password" `
--sourceschema "SYSTEM" `
--sourcetable "ORDERS" `
--directory "C:\temp" `
--fileoutput "oracle_orders_dd.csv" `
--decimalseparator "." `
--delimiter "|" `
--dateformat "yyyy-MM-dd HH:mm:ss" `
--encoding "UTF-8" `
--parallelmethod "DataDriven" `
--distributekeycolumn "order_status" `
--paralleldegree 10 `
--merge "False" `
--runid "oraodp_to_csv_parallel10_datadriven"
Export to Parquet
Export Oracle data to Parquet format.
Single-threaded:
.\\FastTransfer.exe `
--connectiontype "oraodp" `
--server "localhost:1521/ORCLPDB1" `
--user "system" `
--password "password" `
--sourceschema "SYSTEM" `
--sourcetable "ORDERS" `
--directory "C:\temp" `
--fileoutput "oracle_orders.parquet" `
--parallelmethod "None"
Parallel with Rowid:
.\\FastTransfer.exe `
--connectiontype "oraodp" `
--server "localhost:1521/ORCLPDB1" `
--user "system" `
--password "password" `
--sourceschema "SYSTEM" `
--sourcetable "ORDERS" `
--directory "C:\temp" `
--fileoutput "oracle_orders.parquet" `
--parallelmethod "Rowid" `
--paralleldegree 10 `
--merge "False"
OLEDB Connection Examples
Using Oracle OLEDB Provider for connections.
Single-threaded:
.\\FastTransfer.exe `
--connectiontype "oledb" `
--provider "OraOLEDB.Oracle" `
--server "localhost:1521/ORCLPDB1" `
--user "system" `
--password "password" `
--query "SELECT * FROM SYSTEM.ORDERS WHERE ROWNUM <= 10000" `
--directory "C:\temp" `
--fileoutput "oracle_orders.csv" `
--decimalseparator "." `
--delimiter "|" `
--dateformat "yyyy-MM-dd HH:mm:ss" `
--encoding "UTF-8" `
--parallelmethod "None"
Parallel Random:
.\\FastTransfer.exe `
--connectiontype "oledb" `
--provider "OraOLEDB.Oracle" `
--server "localhost:1521/ORCLPDB1" `
--user "system" `
--password "password" `
--query "SELECT * FROM SYSTEM.ORDERS" `
--directory "C:\temp" `
--fileoutput "oracle_orders.csv" `
--decimalseparator "." `
--delimiter "|" `
--dateformat "yyyy-MM-dd HH:mm:ss" `
--encoding "UTF-8" `
--parallelmethod "Random" `
--distributekeycolumn "order_id" `
--paralleldegree 6 `
--merge "False"
Parallel DataDriven:
.\\FastTransfer.exe `
--connectiontype "oledb" `
--provider "OraOLEDB.Oracle" `
--server "localhost:1521/ORCLPDB1" `
--user "system" `
--password "password" `
--query "SELECT * FROM SYSTEM.ORDERS" `
--directory "C:\temp" `
--fileoutput "oracle_orders.csv" `
--decimalseparator "." `
--delimiter "|" `
--dateformat "yyyy-MM-dd HH:mm:ss" `
--encoding "UTF-8" `
--parallelmethod "DataDriven" `
--distributekeycolumn "order_status" `
--paralleldegree 6 `
--merge "False"
Build your command with the Wizard