tDBSQLRow - 6.1

Talend Components Reference Guide

EnrichVersion
6.1
EnrichProdName
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for Big Data
Talend Open Studio for Data Integration
Talend Open Studio for Data Quality
Talend Open Studio for ESB
Talend Open Studio for MDM
Talend Real-Time Big Data Platform
task
Data Governance
Data Quality and Preparation
Design and Development
EnrichPlatform
Talend Studio

Note that this component is incompatible with JVM 1.8 and is therefore deprecated and hidden from the Palette by default. To use this component, you need to install JVM 1.7 or an earlier version. For information about how to show a hidden component on the Palette, see Talend Studio User Guide.

tDBSQLRow properties

Component family

Databases/DB Generic

 

Function

tDBSQLRow is the generic component for database query. It executes the SQL query stated onto the specified database. The row suffix means the component implements a flow in the job design although it does not provide output.

Note

For performance reasons, specific DB component should always be preferred to the generic component.

Purpose

Depending on the nature of the query and the database, tDBSQLRow acts on the actual DB structure or on the data (although without handling data). The SQLBuilder tool helps you write easily your SQL statements.

Note

To use this component, relevant DBMSs' ODBC drivers should be installed and the corresponding ODBC connections should be configured via the database connection configuration wizard.

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.

 

Datasource

Name of the data source defined via the database connection configuration wizard.

 

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 (columns) 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: You create and store the schema locally for this component only. Related topic: see Talend Studio User Guide.

 

 

Repository: You have already created the schema and stored it in the Repository. You can reuse it in various projects and Job designs. 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.

 

Table Name

Name of the source table where changes made to data should be captured.

 

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

This check box is cleared by default, meaning to skip the row on error and to complete the process for error-free rows. If needed, you can retrieve the rows on error via a Row > Rejects link.

Advanced settings

Additional JDBC parameters

Specify additional connection properties for the database connection you are creating.

Note

You can set the encoding parameters through this field.

 

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.

 

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.

 

tStatCatcher Statistics

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

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.

Note that the relevant DBRow component should be preferred according to your DBMSs. Most of the DBMSs have their specific DBRow components.

Log4j

If you are using a subscription-based version of the Studio, 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: Resetting a DB auto-increment

This scenario describes a single component Job which aims at re-initializing the DB auto-increment to 1. This job has no output and is generally to be used before running a script.

Warning

As a prerequisite of this Job, the relevant DBMS's ODBC driver must have been installed and the corresponding ODBC connection must have been configured.

  1. Drag and drop a tDBSQLRow component from the Palette to the design workspace.

  2. Double-click tDBSQLRow to open its Basic settings view.

  3. Select Repository in the Property Type list as the ODBC connection has been configured and saved in the Repository. The follow-up fields gets filled in automatically.

    For more information on storing DB connections in the Repository, see Talend Studio User Guide.

  4. The Schema is built-in for this Job and it does not really matter in this example as the action is made on the table auto-increment and not on data.

  5. The Query type is also built-in. Click on the [...] button next to the Query statement box to launch the SQLbuilder editor, or else type in directly in the statement box:

    Alter table <TableName> auto_increment = 1

  6. Press Ctrl+S to save the Job and F6 to run.

    The database autoincrement is reset to 1.