August 15, 2023

tELTOracleOutput – Docs for ESB 6.x

tELTOracleOutput

Performs the action (insert, update, delete, or merge) on data in the specified
Oracle table through the SQL statement generated by the tELTOracleMap
component.

The three ELT Oracle components are closely related, in terms of their
operating conditions. These components should be used to handle Oracle database table
schemas to generate SQL statements, including clauses, which are to be executed in the
database output table defined.

tELTOracleOutput Standard properties

These properties are used to configure tELTOracleOutput running in the Standard Job framework.

The Standard
tELTOracleOutput component belongs to the ELT family.

The component in this framework is generally available.

Basic Settings

Action on data

On the data of the table defined, you can perform the following
operation:

Insert: Add new entries to the table. If
duplicates are found, the Job stops.

Update: Updates entries in the table.

Delete: Deletes the entries which
correspond to the entry flow.

MERGE: Updates and/or adds data to the
table. Note that the options available for the MERGE operation are different to
those available for the Insert, Update or Delete operations.

Note:

Following global variables are available:

  • NB_LINE_INSERTED: Number of lines inserted during the
    Insert operation.

  • NB_LINE_UPDATED: Number of lines updated during the
    Update operation.

  • NB_LINE_DELETED: Number of lines deleted during the
    Delete operation.

  • NB_LINE_MERGED: Number of lines inserted and/or
    updated during the MERGE
    operation.

Schema and Edit schema

A schema is a row description, it defines the number of fields
to be processed and passed on to the next component. The schema is either
built-in or remotely stored in the Repository.

Click Edit schema to make changes to the schema.
If the current schema is of the Repository type, three
options are available:

  • View schema: choose this option to view the
    schema only.

  • Change to built-in property: choose this
    option to change the schema to Built-in for
    local changes.

  • Update repository connection: choose this
    option to change the schema stored in the repository and decide whether to propagate
    the changes to all the Jobs upon completion. If you just want to propagate the
    changes to the current Job, you can select No
    upon completion and choose this schema metadata again in the [Repository Content] window.

 

Built-in: The schema is created and
stored locally for this component only. Related topic: see
Talend Studio User Guide
.

 

Repository: The schema already exists
and is stored in the Repository, hence can be reused. Related topic: see
Talend Studio User Guide
.

Where clauses for (for UPDATE and DELETE
only
)

Enter a clause to filter the data to be updated or deleted
during the update or delete operations.

Use Merge Update (for MERGE)

Select this check box to update the data in the output
table.

Column : Lists the columns in the entry
flow.

Update : Select the check box which
corresponds to the name of the column you want to update.

Use Merge Update Where Clause : Select
this check box and enter the WHERE clause required to filter the data to be
updated, if necessary.

Use Merge Update Delete Clause: Select
this check box and enter the WHERE clause required to filter the data to be
deleted and updated, if necessary.

Use Merge Insert (for MERGE)

Select this check box to insert the data in the table.

Column: Lists the entry flow
columns.

Check All: Select the check box
corresponding to the name of the column you want to insert.

Use Merge Update Where Clause: Select
this check box and enter the WHERE clause required to filter the data to be
inserted.

Default Table Name

Enter a default name for the table, between double quotation
marks.

Default Schema Name

Enter a name for the default Oracle schema, between double
quotation marks.

Table name from connection name is variable

Select this check box when the name of the connection to this component is
set to a variable, such as a context variable.

Use different table name

Select this check box to define a different output table name,
between double quotation marks, in the Table
name
field which appears.

Mapping

Specify the metadata mapping file for the database
to be used. The metadata mapping file is used for the data type conversion
between database and Java. For more information about the metadata mapping,
see the related documentation for Type mapping.

Advanced settings

Use Hint Options

Select this check box to activate the hint configuration area when you
want to use a hint to optimize a query’s execution. In this area,
parameters are:

HINT: specify the hint you need,
using the syntax /*+ */.

POSITION: specify where you put the
hint in a SQL statement.

SQL STMT: select the SQL statement
you need to use.

tStatCatcher Statistics

Select this check box to gather the Job processing metadata at a Job
level as well as at each component level.

Global Variables

Global Variables

NB_LINE: the number of rows read by an input component or
transferred to an output component. This is an After variable and it returns an
integer.

NB_LINE_INSERTED: the number of rows inserted. This is an
After variable and it returns an integer.

ERROR_MESSAGE: the error message generated by the
component when an error occurs. This is an After variable and it returns a string. This
variable functions only if the Die on error check box is
cleared, if the component has this check box.

A Flow variable functions during the execution of a component while an After variable
functions after the execution of the component.

To fill up a field or expression with a variable, press Ctrl +
Space
to access the variable list and choose the variable to use from it.

For further information about variables, see
Talend Studio

User Guide.

Usage

Usage rule

tELTOracleOutput is to be used along
with the tELTOracleInput and tELTOracleMap components. Note that the
Output link to be used with these components must correspond strictly to
the syntax of the table name.

Note:

Note that the ELT components do not handle actual data flow but
only schema information.

Scenario: Using the Oracle MERGE function to update and add data simultaneously

This scenario describes a Job that allows you to add new customer information and update
existing customer information in a database table using the Oracle MERGE command.

Linking the components

  1. Drop the following components from the Palette to the design workspace: tELTOracleInput, tELTOracleMap,
    and tELTOracleOutput.
  2. Label tELTOracleInput as new_customer, tELTOracleMap as ELT Mapper,
    and tELTOracleOutput as merge_data.
  3. Link tELTOracleInput to tELTOracleMap using a Row >
    New Output (table) connection.

    In the pop-up box, enter NEW_CUSTOMERS as
    the table name, which should be the actual database table name.
  4. Link tELTOracleMap to tELTOracleOutput using a Row
    > New Output (table) connection.

    In the pop-up box, enter customers_merge as
    the name of the database table, which holds the merge results.
    Use_Case_tELTOracleOutput1.png

Configuring the components

  1. Double-click the tELTOracleInput component to
    display its Basic settings view.

    Use_Case_tELTOracleOutput2.png

  2. Select Repository from the Schema list, click the […] button preceding Edit
    schema
    , and select your database connection and the desired
    schema from the [Repository Content] dialog
    box.

    Use_Case_tELTOracleOutput2.png

    The selected schema name appears in the Default Table
    Name
    field automatically.
    In this use case, the database connection is
    Talend_Oracle

    and the schema is new_customers.
    Note:

    In this use case, the input schema is stored in the Metadata node of the Repository tree view for easy retrieval. For further
    information concerning metadata, see
    Talend Studio
    User Guide
    .

    You can also select the input component by dropping the relevant schema
    from the Metadata area onto the design
    workspace and double-clicking tELTOracleInput from the [Components] dialog box. Doing so allows you to skip the
    steps of labeling the input component and defining its schema manually.

  3. Click the tELTOracleMap component to display
    its Basic settings view.

    use_case-tetloracleoutput3half.png

  4. Select Repository from the Property Type list, and select the same database
    connection that you use for the input components.

    All the database details are automatically retrieved.
    Leave the other settings as they are.
  5. Double-click the tELTOracleMap component to
    launch the ELT Map editor to set up the data transformation flow.

    Display the input table by clicking the green plus button at the upper left
    corner of the ELT Map editor and selecting the relevant table name in the
    [Add a new alias] dialog box.
    In this use case, the only input table is new_customers.
    UseCase_tetloracleoutput4.png

  6. Select all the columns in the input table and drop them to the output
    table.

    use_case_teltoracleoutput5_top.png

  7. Click the Generated SQL Select query tab to
    display the query statement to be executed.

    use_case_teltoracleoutput_5_query.png

    Click OK to validate the ELT Map settings and
    close the ELT Map editor.
  8. Double-click the tELTOracleOutput component
    to display its Basic settings view.

    From the Action on data list, select
    MERGE.
    Click the Sync columns button to retrieve the
    schema from the preceding component.
    Select the Use Merge Update check box to
    update the data using Oracle’s MERGE function.
  9. In the table that appears, select the check boxes for the columns you want to
    update.

    In this use case, we want to update all the data according to the customer
    ID. Therefore, select all the check boxes except the one for the
    ID column.
    use_case_teltoracleoutput6_top.png

    Warning:

    The columns defined as the primary key cannot and must not be made
    subject to updates.

  10. Select the Use Merge Insert check box to
    insert new data while updating the existing data by leveraging Oracle’s MERGE
    function.

    In the table that appears, select the check boxes for the columns into which
    you want to insert new data.
    In this use case, we want to insert all the new customer data. Therefore,
    select all the check boxes by clicking the Check
    All
    check box.
  11. Fill the Default Table Name field with the
    name of the target table already existing in your database. In this example,
    fill in customers_merge.
  12. Leave the other parameters as they are.

    use_case_teltoracleoutput6_bot.png

Executing the Job

  1. Press Ctrl + S to save the Job.
  2. Press F6 to run the Job.

    The data is updated and inserted in the database. The query used is displayed
    on the console.
    Use_Case_tELTOracleOutput7.png


Document get from Talend https://help.talend.com
Thank you for watching.
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x