Versions Compared

Key

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

...

Snap type:

Write

...

Description:

...

In this article

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

Overview

You can use this Snap to execute a SQL UPDATE statement for each batch of input documents. Keys from the document

...

are used as the columns to update and their values will be the updated value in the column.

...

Info

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.

This Snap also supports DML (Data Manipulation Language) operations (ALTER and INSERT) when using the AWS Athena database.

Snap Type

Generic JDBC - Update is a Write-type Snap that executes SQL UPDATE statement.

Prerequisites

...

...

None

...

.

Support

...

...

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

...

for Ultra Pipelines

Works in Ultra Pipelines. However, we recommend that you not use this Snap in an Ultra Pipeline. This operation is not supported for Apache Hive databases.

Known Issues & Limitations

None.

Snap Views

...

Settings

Label

...

Type

Format

Number of views

Examples of Upstream and Downstream Snaps

Description

Input 

Document

  • Min: 1

  • Max: 1

  • Mapper

  • Sequence

This Snap has exactly one document input view.

Output

Document

  • Min: 0

  • Max: 1

  • File Writer

  • Mapper

This Snap has at most one document 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 document 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.

Error handling is a generic way to handle errors without losing data or failing the Snap execution. You can handle the errors that the Snap might encounter while running the Pipeline by choosing one of the following options from the When errors occur list under the Views tab. The available options are:

  • Stop Pipeline Execution: Stops the current pipeline execution when the Snap encounters an error.

  • Discard Error Data and Continue: Ignores the error, discards that record, and continues with the rest of the records.

  • Route Error Data to Error View: Routes the error data to an error view without stopping the Snap execution.

Learn more about Error handling in Pipelines.

Snap Settings

Info
  • Asterisk (*): Indicates a mandatory field.

  • Suggestion icon ((blue star)): Indicates a list that is dynamically populated based on the configuration.

  • Expression icon ((blue star)): Indicates whether the value is an expression (if enabled) or a static value (if disabled). Learn more about Using Expressions in SnapLogic.

  • Add icon ((blue star)): Indicates that you can add fields in the field set.

  • Remove icon ((blue star)): Indicates that you can remove fields from the field set.

Field Name

Field Type

Description

Label*

Default ValueGeneric JDBC - Update
ExampleGeneric JDBC - Update

String

Specify 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

Default Value: N/A
Example: "PUBLIC"

String/Expression

Specify 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.

...

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

Table Name*

Default Value: N/A
Example

...

Employee

String/Expression

Specify the name of the table

...

in the instance. The table name is suggestible and requires an account setting.

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

Update Condition

Default Value: N/A
Example:

...

Default value:  [None]

...

Required. SQL where clause of the update statement.

Exampleemail = "customer@example.com"
Default value:  [None]

...

Multiexcerpt include macro
nameSnap Execution
pageSOAP Execute

Without using expressions

  • EmpId = 12 

  • email = 'you@example.com'

Using expressions

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

  • email = $email 

  • emp=$emp

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

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

Note

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.

String/Expression

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;

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

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

Number of retries

Default Value: 0
Example: 3

Integer/Expression

Specify 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.

Retry interval (seconds)

Default Value: 1
Example: 10

Integer/Expression

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

Snap Execution

Default Value: Execute only
ExampleValidate & Execute

Dropdown list

Select one of the three modes in which the Snap executes. Available options are:

  • Validate & Execute: Performs limited execution of the Snap, and generates a data preview during Pipeline validation. Subsequently, performs full execution of the Snap (unlimited records) during Pipeline runtime.

  • Execute only: Performs full execution of the Snap during Pipeline execution without generating preview data.

  • Disabled: Disables the Snap and all Snaps that are downstream from it.

Examples

Update data in an SQL database

This example pipeline demonstrates how to update the data in the SQL database.

...

Step 1: Configure the Mapper Snap to pass the data. On validation, the Snap displays the output based on the specified input.

Image Added

Image Added

Step 2: Configure the Generic JDBC - Update Snap to update the “TECTONIC”.”ACTRESS1” table with the update condition. On validation, the Snap displays a confirmation message indicating that the data was successfully updated in the database.

Image Added

Image Added

Downloads

Info
  1. Download and import the Pipeline into SnapLogic.

  2. Configure Snap accounts as applicable.

  3. Provide Pipeline parameters as applicable.

Attachments
patterns*.slp, *.zip
sortByname

Snap Pack History

Expand

Multiexcerpt include macro
name

...

JDBC_SPH
templateData[]
page

...

Note
This operation is not supported for Apache Hive databases.

...

JDBC Snap Pack
addpanelfalse

...

Related Content

...