August 17, 2023

tSQLiteRow – Docs for ESB 5.x

tSQLiteRow

tSQLiteRow_icon32_white.png

tSQLiteRow Properties

Component family

Databases

 

Function

tSQLiteRow executes the defined
query onto the specified database and uses the parameters bound with
the column.

Purpose

A prepared statement uses the input flow to replace the
placeholders with the values for each parameters defined. This
component can be very useful for updates.

Basic settings

Property type

Either Built-in or Repository.

Since version 5.6, both the Built-In mode and the Repository mode are
available in any of the Talend solutions.

 

 

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.

 

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
.

 

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.

Since version 5.6, both the Built-In mode and the Repository mode are
available in any of the Talend solutions.

 

 

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
.

   

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.

 

Query type

Either Built-in or Repository.

Since version 5.6, both the Built-In mode and the Repository mode are
available in any of the Talend solutions.

 

 

Built-in: Fill in manually the
query statement or build it graphically using SQLBuilder

 

 

Repository: Select the relevant
query stored in the Repository. The Query field gets accordingly
filled in.

 

Query

Enter your DB query paying particularly attention to properly
sequence the fields in order to match the schema definition.

 

Die on error

Clear this check box to skip the row on error and complete the
process for error-free rows.

Advanced settings

Propagate QUERY’s recordset

Select this check box to insert the result of the query into a
COLUMN of the current flow. Select this column from the use column list.

Note

This option allows the component to have a different schema
from that of the preceding component. Moreover, the column that
holds the QUERY’s recordset should be set to the type of
Object and this component
is usually followed by tParseRecordSet.

 

Use PreparedStatement

Select this check box if you want to query the database using a
PreparedStatement. In the Set
PreparedStatement Parameter
table, define the
parameters represented by “?” in the SQL instruction of the
Query field in the Basic Settings tab.

Parameter Index: Enter the
parameter position in the SQL instruction.

Parameter Type: Enter the parameter
type.

Parameter Value: Enter the
parameter value.

Note

This option is very useful if you need to execute the same
query several times. Performance levels are increased

 

Commit every

Number of rows to be completed before committing batches of rows
together into the DB. This option ensures transaction quality (but
not rollback) and above all better performance on executions.

 

tStat
Catcher Statistics

Select this check box to collect log data at the component
level.

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 more information on Dynamic settings and context
variables, see Talend Studio User Guide.

Global Variables

QUERY: the SQL query statement being processed. This is a
Flow variable and it returns a string.

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

This component offers the flexibility of the DB query and covers
all possible SQL queries.

Log4j

The activity of this component can be logged using the log4j feature. For more information on this feature, see Talend Studio User
Guide
.

For more information on the log4j logging levels, see the Apache documentation at http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/Level.html.

Scenario: Updating SQLite rows

This scenario describes a job which updates an SQLite database file based on a
prepared statement and using a delimited file.

Use_Case_tSQLiteRow1.png
  • Drop a tFileInputDelimited and a tSQLiteRow component from the Palette to the design workspace.

  • On the tFileInputDelimited
    Basic settings panel, browse to the input file
    that will be used to update rows in the database.

Use_Case_tSQLiteRow2.png
  • There is no Header nor Footer. The Row separator is a
    carriage return and the Field separator is a
    semi-colon.

  • Click the […] button next to Edit schema and define the schema structure in case it is not stored in the Repository.

Use_Case_tSQLiteRow3.png
  • Make sure the length and type are respectively correct and large enough to
    define the columns.

  • Then in the tSQLiteRow
    Basic settings panel, set the Database filepath to the file to be updated.

Use_Case_tSQLiteRow3_.png
  • The schema is read-only as it is required to match the input schema.

  • Type in the query or retrieve it from the
    Repository
    . In this use case, we updated the
    type_os for the id defined in the
    Input flow. The statement is as follows: "Update download set type_os=?
    where id=?"
    .

  • Then select the Use PreparedStatement check
    box to display the placeholders’ parameter table.

Use_Case_tSQLiteRow4.png
  • In the Input parameters table, add as many lines as necessary to cover all
    placeholders. In this scenario, type_os and
    id are to be defined.

  • Set the Commit every field.

  • Save the job and press F6 to run it.

The download table from the SQLite database is thus updated with
new type_os code according to the delimited input file.


Related scenarios

For a related scenario, see:


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