Skip to main content Skip to complementary content

tMSSqlConnection

Opens a connection to the specified database that can then be reused in the subsequent subJob or subJobs.

tMSSqlConnection opens a connection to a Microsoft SQL Server database or a Microsoft Azure SQL database.

tMSSqlConnection Standard properties

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

The Standard tMSSqlConnection component belongs to the Databases and the ELT families.

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

Information noteNote: 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 DB Generic components.
Information noteNote: When building a Job as an OSGI Bundle for ESB, MS SQL Server drivers jtds and mssql-jdbc used by the SQL Server components are not included in the build artifact. To run the artifact in Talend Runtime, you need to deploy the drivers manually by copying the drivers to the <TalendRuntimePath>/lib folder and restart Talend Runtime.

Basic settings

Properties Description
Database

Select the desired database type from the list and click Apply.

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.

JDBC Provider

Select the provider of the JDBC driver to be used, either Microsoft (the default, recommended) or Open source JTDS.

When Microsoft is selected, you need to download the Microsoft JDBC Driver for SQL Server on Microsoft Download Center, unpack the downloaded zip file, choose a jar in the unzipped folder based on your JRE version, rename the jar to mssql-jdbc.jar and install it manually. For more information about choosing the jar, see the System Requirements information on Microsoft Download Center.

Note that OSGi builds will not include any open source jTDS JDBC driver. If you need to build your Job containing this component as an OSGi bundle, use the official Microsoft JDBC driver; otherwise, this component will work only with Datasource with the jTDS JDBC driver properly installed in Talend Runtime.

Host

Enter the IP address or the hostname of the database server or the Azure Synapse Analytics to be used.

If the SQL Server Browser service is running on the machine where the server resides, you can connect to a named instance through a TCP dynamic port by providing the host name and the instance name in this field in the format of {host_name}\{instance_name}. In this case, you can leave the Port field empty. See SQL Server Browser service for related information.

Port

Enter the listening port number of the database server or the Azure Synapse Analytics to be used.

If the SQL Server Browser service is running on the machine where the server resides, you can connect to a named instance through a TCP dynamic port by providing the host name and the instance name in the Host field and leave this field empty. See SQL Server Browser service for related information.

Schema Enter the name of the database schema.
Database

Enter the name of the database.

Username and Password Enter the authentication data.

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

You can use Type 2 integrated authentication on Windows by adding integratedSecurity=true in the Additional JDBC Parameters field and leave these two fields empty. See section Connecting with integrated authentication On Windows at Building the connection URL for related information.

Additional JDBC parameters

Specify additional connection properties for the database connection you are creating. The properties are separated by semicolon and each property is a key-value pair. For example, encrypt=true;trustServerCertificate=false; hostNameInCertificate=*.database.windows.net;loginTimeout=30; for Azure SQL database connection.

Use or register a shared DB Connection

Select this checkbox to share your database connection or fetch a database connection shared by a parent or child Job, and in the Shared DB connection name field displayed, enter the name for the shared database connection. This allows you to share one single database connection (except the database schema setting) among several database connection components from different Job levels that can be either parent or child.

This option is incompatible with the Use dynamic Job and Use an independent process to run subJob options of the tRunJob component. Using a shared connection together with a tRunJob component with either of these two options enabled will cause your Job to fail.

This checkbox is not available when the Specify a data source alias checkbox is selected.

Specify a data source alias

Select this checkbox 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 .

This checkbox is not visible when the Use or register a shared DB Connection checkbox is selected.

Data source alias

Enter the alias of the data source created on the Talend Runtime side.

This field is available only when the Specify a data source alias checkbox is selected.

Advanced settings

Properties Description
Authenticate using Azure Active Directory When selected, this option allows you to pick the authentication mode to use from the Azure Active Directory authentication mode dropdown list:
  • Service principal (client secret): use the service principal credentials (client ID and client secret) to authenticate.
  • User password: use the Azure Active Directory user credentials (username and password) to authenticate.

Read the Usage section of this document for information about Microsoft SQL Server/JDBC encryption requirements.

This option is only available when Microsoft is selected from the JDBC Provider dropdown list in the Basic settings view.

Enable always encrypted (Column encryption) Select this option to use the Microsoft Always encrypted feature to encrypt and protect your data. To use this option, you need to have previously stored your secrets with Azure Key Vault:
  • Application Client ID: Enter the client ID for the registered application. This information can be found in the details of your app under Azure Active Directory > App registrations > Essentials.
  • Application Client Secret: Enter the client password for the registered application. This information can be found in the details of your app under Azure Active Directory > App registrations > Certificates and secrets.

Some limitations regarding query operations and statements apply to this feature. For the exhaustive list of limitations, see the Microsoft SQL Server documentation.

Auto Commit

Select this checkbox to commit any changes to the database automatically upon the transaction.

With this checkbox selected, you cannot use the corresponding commit component to commit changes to the database; likewise, when using the corresponding commit component, this checkbox has to be cleared. By default, the auto commit function is disabled and changes must be committed explicitly using the corresponding commit component.

Note that the auto commit function commits each SQL statement as a single transaction immediately after the statement is executed while the commit component does not commit only until all of the statements are executed. For this reason, if you need more room to manage your transactions in a Job, it is recommended to use the commit component.

Share identity insert in multi table

Select this checkbox to share IDENTITY_INSERT among multiple Microsoft SQL tables that accept data through the same database connection.

This option prevents errors caused by setting IENTITY_INSERT to ON (or OFF) repeatedly when writing Microsoft SQL tables through a database connection. It is necessary to check this option when the component is used along with multiple tMSSqlOutput components with their Turn on Identity insert options checked in the Basic settings tab.

Note that checking this option may decrease the execution performance.

tStatCatcher Statistics Select this checkbox to gather the Job processing metadata at a Job level as well as at each component level.

Usage

Usage guidance Description
Usage rules This component is more commonly used with other tMSSql* components, especially with the tMSSqlCommit and tMSSqlRollback components.
Information noteImportant: Microsoft SQL Server/JDBC encryption requirements

Starting with recent versions of the Microsoft SQL Server JDBC driver, TLS encryption is enabled by default (encrypt=true;trustServerCertificate=false). This enhances security, but if your SQL Server does not support encrypted connections or does not require clients to use TLS, you must set encrypt=false in the JDBC parameters of this component to connect successfully.

  • For production or cloud environments using certificates signed by a trusted authority (e.g., Azure, AWS), no changes are needed, the default settings will work.

  • For servers using self-signed certificates, use encrypt=true;trustServerCertificate=true or specify the trust store details (encrypt=true;trustStore=<your_trust_store>;trustStorePassword=<your_trust_store_password>).

  • For non-secure development or test servers, set encrypt=false in the additional JDBC parameters.

For more information on how to use connections with encryption properties, see Microsoft SQL JDBC documentation.

Limitation

Due to license incompatibility, one or more JARs required to use this component are not provided. You can install the missing JARs for this particular component by clicking the Install button on the Component tab view. You can also find out and add all missing JARs easily on the Modules tab in the Integration perspective of Talend Studio. For details, see Installing external modules.

Did this page help you?

If you find any issues with this page or its content – a typo, a missing step, or a technical error – please let us know!