Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

On this page

Table of Contents
maxLevel2
excludeOlder Versions|Additional Resources|Related Links|Related Information

Snap type:

Write

Description:

This Snap executes an SQL update with the given properties. Keys from the document will be used as the columns to update and their values will be the updated value in the column.

Note
Updates will be batched up until the account's batch size property or until the structure of the update statement changes. An update statement will change if an incoming document contains different keys than a previous document.

Expected upstream Snaps:  The data to be updated in the table can be defined by providing values upstream. The document generator Snaps like JSON Generator can be used in upstream.
Expected downstream Snaps: The Snap will output one document for every record updated, hence any document processing Snap can be used down stream.

Prerequisites:

[None]

Support and limitations:Works in Ultra Task Pipelines.
Account: 

This Snap uses account references created on the Accounts page of SnapLogic Manager to handle access to this endpoint. See Configuring SAP HANA Accounts for information on setting up this type of account.

Views:


InputThis Snap has exactly one input view.
OutputThis Snap has at most one output view. If an output view is available, then the original document that was used to create the statement will be output with the status of the update.
Error

This Snap has at most one error view and produces zero or more documents in the view.

Note
Database Write Snaps output all records of a batch (as configured in your account settings) to the error view if the write fails during batch processing.



Settings

Label

Required. The name for the Snap. You can modify this to be more specific, especially if you have more than one of the same Snap in your pipeline

Schema name

The database schema name. In case it is not defined, then the suggestion for the table name will retrieve all tables names of all schemas. The property is suggestible and will retrieve available database schemas during suggest values.

Note

The values can be passed using the pipeline parameters but not the upstream parameter.

Example: myschema

Default value: [None]

Table name


Required. The name of the table to execute the update operation on.

Note

The values can be passed using the pipeline parameters but not the upstream parameter.

Example: people

Default value:  [None]

Update condition

Specify the SQL WHERE clause of the update statement. You can define specific values or columns to update (Set condition) in the upstream Snap, such as Mapper Snap, and then use the WHERE clause to apply these conditions on the columns sourced from the upstream Snap. For instance, here is a sample of an Update SQL query:

UPDATE table_name
SET column1 = value1, column2 = value2,
WHERE condition;

Info

If the Update Condition field is left blank, the condition is applied on all the records of the target table.

Multiexcerpt include macro
nameOriginal structure_for_primary_key
pageOracle - Update

Note

Instead of building multiple Snaps with inter dependent DML queries, it is recommended to use the SAP HANA - Stored Procedure Snap.
In a scenario where the downstream Snap depends on the data processed in an Upstream Database Bulk Load Snap, use the Script Snap to add delay for the data to be available.

Refer to the example to understand how to use the Update Condition.

Examples

Without using expressions

Using expressions

  • "EMPNO=$EMPNO and ENAME=$EMPNAME"

  • email = $email 

  • emp=$emp

  • "emp='" + $emp + "'"

  • "EMPNO=" + $EMPNO + " and ENAME='" + $EMPNAME+ "'"

Warning
titleCaution

Using expressions that join strings together to create SQL queries or conditions has a potential SQL injection risk and is hence unsafe. Ensure that you understand all implications and risks involved before using concatenation of strings with '=' Expression enabled. 

Default value: [None]

Number of retries

Specifies the maximum number of attempts to be made to receive a response. The request is terminated if the attempts do not result in a response.

Example: 3

Default value: 0

Multiexcerpt include macro
nameretries
pageFile Reader

Retry interval (seconds)

Specifies the time interval between two successive retry requests. A retry happens only when the previous attempt resulted in an exception. 

Example:  10

Default value: 1

Multiexcerpt include macro
nameSnap Execution
pageSOAP Execute

Multiexcerpt include macro
nameExecution_Detail_Write
pageSOAP Execute

Insert excerpt
Azure SQL - Bulk Load
Azure SQL - Bulk Load
nopaneltrue

 Examples


The following example updates the city of users in the "USER" table based on the update condition (age < 55).

The update values are passed from upstream using JSON Generator. The update condition here will specify the condition to identify the records to be updated.

The sample output of update Snap looks like:

Insert excerpt
SAP HANA Snap Pack
SAP HANA Snap Pack
nopaneltrue