Oracle Destination
Overview
The Oracle Destination Component is an SSIS Data Flow Component, which is used to connect to an Oracle database and to perform bulk loads of data into Oracle tables. It uses a direct path load approach. Using a direct path load is faster than standard loading (using the OLE DB Destination) as it formats Oracle data blocks and writes the data blocks directly to the data files. This eliminates considerable processing overhead. The configuration parameters are provided in the standard data flow destination component dialog. This component requires installation of:
- Oracle 11g ODAC 11.1.0.6.20.
... or - ODAC 12.2c Release 1 and Oracle Developer Tools for Visual Studio (12.2.0.1.0).
Sample package
To test the performance of the Oracle Destination component against the standard OLEDB Destination, see this package. You must create a TEST_TABLE table with the following columns:
- COL1 NUMBER
- COL2 TIMESTAMP
- COL3 FLOAT
- COL4 NVARCHAR2 (250)
- COL5 NVARCHAR2 (250)
The NumberOfRows variable controls the number of rows inserted.
Demonstration
Parameters
Configuration
Use the parameters below to configure the component.
Select an existing ADO.NET Oracle Data Provider for .NET connection manager, or click <New connection...> to create a new connection manager. If you use ODAC 12.2c Release 1 you have to use ODP.Net, Unmanaged provider.
Related Topics: ADO.NET Connection Manager
Specify the destination database table where the data is to be loaded.
Specify the destination table partition where the data is to be loaded. This property is not required if the destination is a single partition table.
Specify the number of rows to be sent as a batch.
Specify the number of seconds allowed for the bulk copy operation to complete before it is aborted.
FAQ
The destination table is available in the data flow properties list. Follow these steps to set up an expression:
- Right-click on the data flow canvas and select the Properties menu.
- Scroll down and find the property named like [Oracle Destination].[DestinationTable]. This is the property containing the destination table.
- Scroll down and find the Expressions property. Set up an expression to modify the statement dynamically.
- System.IO.FileNotFoundException: Could not load file or assembly 'Oracle.DataAccess, Version=2.111.6.20, Culture=neutral, PublicKeyToken=89b483f429c47342' or one of its dependencies. The system cannot find the file specified.
We have seen this error when using Oracle Data Provider for .NET 11.1.0.6.20 on 64bit OS, executing in 64bit mode. The provider doesn't support 64bit execution. Please execute your Oracle bulk-load packages in 32bit mode.
- System.IO.FileNotFoundException: Could not load file or assembly 'Oracle.DataAccess, Version=2.111.6.20, Culture=neutral, PublicKeyToken=89b483f429c47342' or one of its dependencies. The system cannot find the file specified.
We have seen this error when using Oracle Data Provider for .NET 11.1.0.6.20 on 64bit OS. By default the SSIS project is setup to use the 64bit SSIS runtime for package debugging purposes. Set Run64BitRuntime project property to False to force SSIS to execute with the 32bit runtime.
- Invalid parameter binding Parameter name: ...
An input data flow column type doesn't match output Oracle column type. Use the standard Data Conversion Transformation to setup the proper column type.
What's New
- New: Component is no longer dependent on specific version of Oracle Data Provider for .NET.
- Fixed: Support for writing BLOB columns.
- Fixed: Validation was incorrect.
- Fixed: Component failed with NullReferenceException error, when trying to bulk-insert columns with NULL values.
- New: Introduced component.
Ready to give it a try?
COZYROC SSIS+ Components Suite is free for testing in your development environment.