tMSSqlSP
Offers a convenient way to centralize multiple or complex queries in a database and
calls them easily.
tMSSqlSP calls the stored procedure in
a Microsoft SQL Server or Azure SQL database.
tMSSqlSP Standard properties
These properties are used to configure tMSSqlSP running in the Standard Job framework.
The Standard
tMSSqlSP component belongs to the Databases family.
The component in this framework is available in all Talend
products.
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 |
Property type |
Either Built-in or Repository |
 |
Built-in: No property data stored |
 |
Repository: Select the repository |
Use an existing connection |
Select this check box and in the Component List click the relevant connection component to 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:
For an example about how to share a database connection |
JDBC Provider |
Select the provider of the JDBC driver to be used, either Microsoft (recommended) or Open When using this component with Datasource in Talend Runtime, you need Note that when Microsoft is selected, you |
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 |
Schema and Edit |
In SP principle, the schema is an input parameter. A schema is a row description. It defines the number of fields |
 |
Built-In: You create and store the schema locally for this component |
 |
Repository: You have already created the schema and stored it in the |
 |
Click Edit
|
SP Name |
Type in the exact name of the Stored Procedure |
Is Function / Return result |
Select this check box, if only a value is to be returned. Select on the list the schema column, the value to be returned is |
Parameters |
Click the Plus button and select the various Schema Columns that will be required by the procedures. Select the Type of parameter: IN: Input parameter
OUT: Output parameter/return
IN OUT: Input parameters is to be
RECORDSET: Input parameters is to be Note:
Check Inserting data in mother/daughter tables, if you want to analyze a set of |
Specify a data source alias |
Select this check box and specify the alias of a data source created on the This check box is not available when the Use an existing |
Data source alias |
Enter the alias of the data source created on the This field is available only when the Specify a data |
Advanced settings
Additional JDBC parameters |
Specify additional connection properties for the database This field is not available if the Use an existing |
tStatCatcher Statistics |
Select this check box to collect log data at the component |
Usage
Usage rule |
This component is used as intermediary component. It can be used as |
Dynamic settings |
Click the [+] button to add a row in the table The Dynamic settings table is 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 |
Limitation |
The Stored Procedures syntax should match the Database syntax. Due to license incompatibility, one or more JARs required to use |
Retrieving personal information using a stored procedure
This scenario describes a Job that retrieves a personal information record from a
specified table using a stored procedure according to the id value defined in the input flow.
In this scenario, the table to retrieve data from contains the personal information.
To reproduce this scenario, you can write the data into the table from a CSV file like
the following. For how to write data into a MS SQL table, see Inserting data into a database table and extracting useful information from it.
1 2 3 4 5 6 |
id;name;sex;age 1;Ford;Male;25 2;Rose;Female;30 3;Sabrina;Female;28 4;Teddy;Male;32 5;Kate;Male;35 |
In this scenario, the stored procedure used to retrieve the personal information is as
follows:
1 2 3 4 5 6 7 8 |
CREATE PROCEDURE [dbo].[QueryPerson] @id int, @name varchar(50) AS BEGIN SET NOCOUNT ON SELECT * FROM dbo.person where id=@id END |
Dropping and linking the components
-
Create a new Job and add the following components by typing their names in
the design workspace or dropping them from the Palette: a tFixedFlowInput
component, a tMSSqlSP component, a
tParseRecordSet component, and two
tLogRow components. - Connect tFixedFlowInput to tMSSqlSP using a Row > Main link.
-
Do the same to connect tMSSqlSP to the
first tLogRow, the first tLogRow to tParseRecordSet, and tParseRecordSet to the second tLogRow.
Configuring the components
Configuring the input component
-
Double-click tFixedFlowInput to open its
Basic settings view. -
Click the […] button next to Edit schema to open the schema editor.
Click the [+] button to add two columns:
id of the integer type and name of the string type.Click OK to close the schema
editor. -
In the Mode area, fill each column with
respective value. In this example, the id
value is set to 4, and the name value is null since it is not used in the
select SQL statement in the stored procedure.
Configuring the tMSSqlSP component
-
Double-click tMSSqlSP to open its
Basic settings view. -
Fill in the Host, Port, Schema, Database, Username, and Password
fields with your MS SQL Server connection details. -
In the SP Name field, enter the name of
the stored procedure to be used. In this example, it is QueryPerson. -
Click the […] button next to Edit schema to open the schema editor.
Click the
button to copy all columns from the input schema to the
output schema, and then click the [+]
button in the right panel to add a new column person of the object type to hold the personal information
to be retrieved from the database.Click OK to close the schema editor and
accept the propagation prompted by the pop-up dialog box. -
In the Parameters area, click the
[+] button to add three rows and select
a schema column and its type for each row. In this example, the id and name
columns are of type IN, and the person column is of type RECORD SET.
Configuring the tParseRecordSet component
-
Double-click tParseRecordSet to open its
Basic settings view. -
From the Prev. Comp. Column list
drop-down list, select the column that holds the personal information to be
parsed. In this example, it is person. -
Click the […] button next to Edit schema to open the schema editor.
Click the [+] button in the right panel
to add four columns: id and age of the integer type, and name and sex
of the string type.Click OK to close the schema editor and
accept the propagation prompted by the pop-up dialog box. -
In the Attribute table area, fill in each
Value column with the corresponding
column name in the MS SQL Server table that holds the personal
information.
Configuring the output components
-
Double-click the first tLogRow to open
its Basic settings view.In the Mode area, select Vertical (each row is a key/value list) for a
better display of the result. - Do the same to configure the second tLogRow.
Saving and executing the Job
- Press Ctrl + S to save the Job.
-
Press F6 to run the Job.
The personal information with the id of 4 in the MS SQL table is displayed in the lower table on the
console. Note that the values of the id
and name columns shown in the upper table
are the input data.
Related scenarios
For related scenarios, see:
Check as well Inserting data in mother/daughter tables to analyze a set of records from a database table or DB query and return single
records.