SQL Server - Insert

SQL Server - Insert

In this article

Overview

You can use this Snap to insert new records into database tables. This Snap executes an SQL Insert statement with the specified values. Key-value pairs are used to insert columns and their respective values into the table columns. Missing columns from the document results in inserting null values into them.

Snap Type

The SQL Server Insert Snap is a WRITE-type Snap that inserts new records into a SQL database table.

Prerequisites

  • Valid client ID.

  • A valid database account with the required permissions.

Support for Ultra Pipelines

Works in Ultra Pipelines if batching is disabled.

Behavior change

As part of the JOOQ upgrade done in main25112, the SQL Server-Insert Snap displayed an error Caused by: java.lang.NumberFormatException: Character n is neither a decimal digit number, decimal point, nor "e" notation exponential mark when an empty string was inserted into an integer-type column. Now, The Snap inserts a null value in this scenario.

Limitations and Known Issues

None.

Supported Versions

This Snap supports SQL Server 2008 or newer.

Snap Views

Type

Format

Number of Views

Examples of Upstream and Downstream Snaps

Description

Type

Format

Number of Views

Examples of Upstream and Downstream Snaps

Description

Input 

Document

 

  • Min: 1

  • Max: 2

  • Mapper

  • JSON Generator

  • CSV Parser

The second input view can be added to use the metadata of the source table as a document so that the table is created in SQL with a similar schema as the source table. The metadata is not used if the table already exists.

Output

Document

  • Min: 0

  • Max: 1

  • JSON Generator

The Snap outputs one document for every record written, therefore any document processing Snap can be used downstream. 

If an output view is available, then the original document that was used to create the statement is written to the output with the status of the insert executed.

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

Error

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 when 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 remaining 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

  • Asterisk (*): Indicates a mandatory field.

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

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

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

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

Field Name

Field Type

Description

Field Name

Field Type

Description

Label*

Default ValueSQL Server - Insert
ExampleSQL Server - Insert

String

Specify a unique name for the Snap.

Schema Name

Default Value: N/A
Exampledbo

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.

You cannot use Pipeline parameters within your SQL statement. If you need to use parameters, insert a Mapper (Data) Snap before the SQL Snap and call them there. The Snap can then use the substituted values through the input view.

Table Name*

Default Value: N/A
Exampledbo.people

String/Expression

Specify the name of a table to execute insert on.

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

 

Create table if not present


Default Value:  Deselected

Checkbox

Number of retries


Default Value: 0
Example3

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
Example10

Integer/Expression

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



Enable identity insert


Default Value: Deselected

Integer/Expression

Select the checkbox to insert values from the input document into the target table identity column. Ensure that the target table contains an identity column. If you do not select the check box, then do not enter any value for the identity column in the input document.

Snap Execution

Default Value: Execute only
Example: Validate & Execute

Dropdown list