AlloyDB Insert

In this article

Overview

You can use this Snap to execute a SQL INSERT statement using the document's keys as the columns to insert to and the document's values as the values to insert into the columns.

Snap Type

The AlloyDB Insert Snap is a Write-type Snap.

Prerequisites

A valid account with the required permissions.

Support for Ultra Pipelines  

Works in Ultra Pipelines if batching is disabled.

Limitations and Known Issues

None.

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

Binary

 

  • Min: 0

  • Max: 1

  • Mapper

  • AlloyDB Execute

A table name and record details. By default the input view accepts the rows to insert into the table. A second input view can be added that accepts the table metadata document from a database Select Snap.  The table metadata is used to create the target table in the database.

Output

Document

Binary

  • Min: 0

  • Max: 1

  • Filter

  • JSON Formatter

Inserts a record.

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 while running the Pipeline by choosing one of the following options from the When errors occur list under the Views tab:

  • Stop Pipeline Execution: Stops the current pipeline execution if 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 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 fieldset.

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

  • Upload icon ( ): Indicates that you can upload files.

Field Name

Field Type

Description

Field Name

Field Type

Description

Label*

 

Default Value: AlloyDB Insert
ExampleAlloyDB Insert

String

Specify a unique name for the Snap.

 

Schema

 

Default Value: N/A
Example: SYS

String/Expression

Specify the database schema name. Selecting a schema filters the Table name list to show only those tables within the selected schema.

You can pass values using the Pipeline parameters but not through the upstream Snap.

Table name*


Default Value: N/A
Example: users 

String/Expression

Specify the table that the rows will be inserted into.

You must check the data type of each column in the table into which you want to insert the input data, and structure your data accordingly; else the endpoint generates an error. For example, if the column contact_id expects data in the UUID datatype, you must provide UUID data. For details on the UUID data type, see The Basics of PostgreSQL UUID Data Type.

Create table if not present


Default Value: Deselected 

Checkbox

Select this checkbox to automatically create the target table if it does not exist.

  • If a second input view is configured for the Snap and it contains a document with schema (metadata) of the source table, the Snap creates the new (target) table using the same schema (metadata). However, if the schema comes from a different database, the Snap might fail with an Unable to create table: "<table_name>" error due to data type incompatibility.

  • In the absence of a second input view (the schema/metadata document), the Snap creates a table based on the data types of the columns generated from the first row of the input document (first input view).

Preserve case sensitivity


Default Value: Deselected

Checkbox

Select this checkbox to preserve the case sensitivity of the column names while performing the insert operation.

If you do not select this option, then Snap converts the column names in the input document to match the column names in the target database table before inserting the values. The Snap checks for the following three conditions:

  • If the column name in the table is in lower case, it modifies the column label to lower case.

  • If the column name in the table is in the upper case, it modifies the column label to upper case.

  • If the conditions mentioned above are not met, it takes the column label as is.

On the contrary, if you select this checkbox, the Snap does not convert the case of the column names and inserts the names as-is in the target database. Therefore, ensure that the column labels in the input document match the column labels in the target database table. Else, the Snap does not insert the values and displays an error. For example, if the column names (ID, Name) in the input document do not match the column names (Id, name) in the database, then the Snap does not insert the values and displays an error.

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
Example: 10

Integer/Expression

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

 

Snap Execution

Default ValueExecute only
Example: Validate & Execute

Dropdown list

Select one of the following three modes in which the Snap executes:

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

 

 

Snap Pack History