July 30, 2023

tOracleSP – Docs for ESB 7.x

tOracleSP

Calls an Oracle database stored procedure.

tOracleSP offers a convenient way to
centralize multiple or complex queries in a database and call them easily.

tOracleSP Standard properties

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

The Standard
tOracleSP component belongs to the Databases family.

The component in this framework is available in all Talend
products
.

Note: This component is a specific version of a dynamic database
connector. The properties related to database settings vary depending on your database
type selection. For more information about dynamic database connectors, see Dynamic database components.

Basic settings

Database

Select a type of database from the list and click
Apply.

Use an existing connection

Select this check box and in the Component List click the relevant connection component to
reuse the connection details you already defined.

Note: When a Job contains the parent Job and the child Job, if you
need to share an existing connection between the two levels, for example, to share the
connection created by the parent Job with the child Job, you have to:

  1. In the parent level, register the database connection
    to be shared in the Basic
    settings
    view of the connection component which creates that very database
    connection.

  2. In the child level, use a dedicated connection
    component to read that registered database connection.

For an example about how to share a database connection
across Job levels, see

Talend Studio
User Guide
.

Connection type

Drop-down list of available drivers:

Oracle OCI: Select this connection
type to use Oracle Call Interface with a set of C-language software
APIs that provide an interface to the Oracle database.

Oracle Service Name: Select this
connection type to use the TNS alias that you give when you connect
to the remote database.

Oracle SID: Select this connection
type to uniquely identify a particular database on a system.

Oracle Custom: Select this
connection type to access a clustered database.

Property type

Either Built-in or
Repository
.

 

Built-in: No property data stored
centrally.

 

Repository: Select the repository
file in which the properties are stored. The fields that follow are
completed automatically using the data retrieved.

DB Version

Select the Oracle version in use.

Host

Database server IP address.

Port

Listening port number of DB server.

Database

Name of the database.

Schema

Name of the schema.

Username and
Password

DB user authentication data.

To enter the password, click the […] button next to the
password field, and then in the pop-up dialog box enter the password between double quotes
and click OK to save the settings.

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 stored remotely
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: You create and store the schema locally for this component
only.

 

Repository: You have already created the schema and stored it in the
Repository. You can reuse it in various projects and Job designs.

SP Name

Type in the exact name of the Stored Procedure (or
Function)

Is Function / Return result
in

Select this check box, if the stored procedure is a function and
one value only is to be returned.

Select on the list the schema column, the value to be returned is
based on.

Parameters

Click the Plus button and select the various Schema Columns that will be required by the
procedures. Note that the SP schema can hold more columns than there
are parameters used in the procedure.

 

Select the Type of
parameter:

IN: Input parameter.

OUT: Output parameter/return
value.

IN OUT: Input parameter is to be
returned as value, likely after modification through the procedure
(function).

RECORDSET: Input parameters is to
be returned as a set of values, rather than single value.

Note:

Check Inserting data in mother/daughter tables if you want to analyze a set
of records from a database table or DB query and return single
records.

 

The Custom Type is used when a
Schema Column you want to use
is user-defined. Two Custom Type
columns are available in the Parameters table. In the first Custom Type column:

– Select the check box in the Custom Type
column when the corresponding Schema Column you want to use is of user-defined
type.

– If all listed Schema Columns
in the Parameters table are of
custom type, you can select the check box before Custom Type once for them all.

 

Select a database type from the DB
Type
list to map the source database type to the
target database type:

– Auto-Mapping: Map the source
database type to the target database type
automatically.(default)

– CLOB: Character large
object.

– BLOB: Binary large object.

– DECIMAL: Decimal numeric
object.

– NUMERIC: Character 0 to 9.

– XMLTYPE: XML schema
type.

Warning:

When mapping a column selected from the Return result in list box or set to the IN or
OUT type of parameter to XMLTYPE, make sure that the column is
of type String in the schema.

 

In the second Custom Type column,
you can precise what the custom type is. The type may be:

STRUCT: used for one element.

ARRAY: used for a collection
of elements.

 

In the Custom name column,
specify the name of the custom type that you have given to this
type.

Warning:

When an OUT parameter uses the custom type, make sure
that its corresponding Schema Column has chosen the Object
type in the schema table.

Specify a data source alias

Select this check box and specify the alias of a data source created on the
Talend Runtime
side to use the shared connection pool defined in the data source configuration. This
option works only when you deploy and run your Job in
Talend Runtime
.

Advanced settings

Additional JDBC parameters

Specify additional connection properties for the DB connection you
are creating. This option is not available if you have selected the
Use an existing connection
check box in the Basic
settings
.

NLS Language

In the list, select the language used for the data that are not
used in Unicode.

NLS Territory

Select the conventions used for date and time formats. The default
value is that of the operating system.

tStatCatcher Statistics

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

Usage

Usage rule

This component is used as intermediary component. It can be used
as start component but only input parameters are thus
allowed.

Dynamic settings

Click the [+] button to add a row in the table
and fill the Code field with a context
variable to choose your database connection dynamically from multiple
connections planned in your Job. This feature is useful when you need to
access database tables having the same data structure but in different
databases, especially when you are working in an environment where you
cannot change your Job settings, for example, when your Job has to be
deployed and executed independent of Talend Studio.

The Dynamic settings table is
available only when the Use an existing
connection
check box is selected in the Basic settings view. Once a dynamic parameter is
defined, the Component List box in the
Basic settings view becomes unusable.

For examples on using dynamic parameters, see Reading data from databases through context-based dynamic connections and Reading data from different MySQL databases using dynamically loaded connection parameters. For more information on Dynamic
settings
and context variables, see Talend Studio
User Guide.

Limitation

The Stored Procedures syntax should match the Database
syntax.

When the parameters set in this component are of Custom Type, the tJava family components should be placed before the
component in order for users to define values for the custom-type
parameters, or after the component so as to read and output the
Out-type custom
parameters.

Checking number format using a stored procedure

The following job aims at connecting to an Oracle Database containing
Social Security Numbers and their holders’ name, calling a stored procedure that checks
the SSN format of against a standard ###-##-#### format. Then the verification output
results, 1 for valid format and 0 for wrong format get displayed onto the execution
console.

tOracleSP_1.png
  • Drag and drop the following components from the Palette: tOracleConnection, tOracleInput, tOracleSP
    and tLogRow.

  • Link the tOracleConnection
    to the tOracleInput using a Then Run connection as no data is handled here.

  • And connect the other components using a Row Main link as rows are to be passed on as
    parameter to the SP component and to the console.

  • In the tOracleConnection,
    define the details of connection to the relevant Database. You will then be able
    to reuse this information in all other DB-related components.

  • Then select the tOracleInput and define its properties.

tOracleSP_2.png
  • Select the Use an existing
    connection
    check box and select the tOracleConnection component in the list in order to reuse the
    connection details that you already set.

  • Select Repository as
    Property type as the Oracle schema is
    defined in the DB Oracle connection entry of the Repository. If you haven’t
    recorded the Oracle DB details in the Repository, then fill in the Schema name manually.

  • Then select Repository as
    Schema, and retrieve the relevant
    schema corresponding to your Oracle DB table.

tOracleSP_3.png
  • In this example, the SSN table has a four-column schema that
    includes ID, NAME, CITY and SSNUMBER.

  • In the Query field, type
    in the following Select query or select it in the list, if you stored it in the
    Repository.

    select ID, NAME, CITY, SSNUMBER from SSN

  • Then select the tOracleSP
    and define its Basic settings.

tOracleSP_4.png
  • Like for the tOracleInput
    component, select Repository in the
    Property type field and select the
    Use an existing connection check box,
    then select the relevant entries in the respective list.

  • The schema used for the tOracleSP slightly differs from the input schema. Indeed, an
    extra column (SSN_Valid) is added to the Input schema.
    This column will hold the format validity status (1 or 0) produced by the procedure.

tOracleSP_5.png
  • In the SP Name field,
    type in the exact name of the stored procedure (or function) as called in the
    Database. In this use case, the stored procedure name is is_ssn.

  • The basic function used in this particular example is as
    follows:

  • As a return value is expected in this use case, the procedure
    acts as a function, so select the Is
    function
    check box.

  • The only return value expected is based on the ssn_valid column, hence select the relevant list
    entry.

  • In the Parameters area,
    define the input and output parameters used in the procedure. In this use case,
    only the SSNumber column from the schema is used in the
    procedure.

  • Click the plus sign to add a line to the table and select the
    relevant column (SSNumber) and type (IN).

  • Then select the tLogRow
    component and click Sync Column to make sure the schema is passed on from the
    preceding tOracleSP component.

tOracleSP_6.png
  • Select the Print values in cells of a
    table
    check box to facilitate the output reading.

  • Then save your job and press F6 to run it.

tOracleSP_7.png

On the console, you can read the output results. All input schema columns
are displayed even though they are not used as parameters in the stored procedure.

The final column shows the expected return value, whether the SS Number
checked is valid or not.

Note:

Check Inserting data in mother/daughter tables if you want to analyze a set of records from a database table or DB query and
return single records.


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