In this article
Table of Contents | ||||
---|---|---|---|---|
|
Overview
Snap type: | Write | |||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Description: | This Snap allows you to execute arbitrary Snowflake SQL.
| |||||||||||||||||||||||
Prerequisites: |
| |||||||||||||||||||||||
Internal SQL Commands | The permissions to grant for usage on database and creating tables depend on the queries you provide in this Snap. | |||||||||||||||||||||||
Support and limitations: |
| |||||||||||||||||||||||
Behavior change |
| |||||||||||||||||||||||
Account: | This Snap uses account references created on the Accounts page of SnapLogic Manager to handle access to this endpoint. See Configuring Snowflake Accounts for information on setting up this type of account. | |||||||||||||||||||||||
Views: |
| |||||||||||||||||||||||
Settings | ||||||||||||||||||||||||
Label* | Specify the name for the Snap. You can make the name more specific, especially if your Pipeline has more than one of the same Snap. | |||||||||||||||||||||||
SQL statement* | Specify the Snowflake SQL statement to execute on the server. Document value substitution is performed on literals starting with '$', for example, $people.name is substituted with its value available in the incoming document. In DB Execute Snaps, if the Snowflake SQL statement is not an expression, the JSON path, such as $para, is allowed in the WHERE clause only. If the query statement starts with SELECT (case-insensitive), the Snap regards it as a select-type query and executes once per input document. If not, the Snap regards it as a write-type query and executes in batch mode. This Snap does not allow you to inject Snowflake SQL, for example, select * from people where $columnName = abc.
| |||||||||||||||||||||||
Pass through | Select this checkbox to enable the Snap to pass the input document to the output view under the key named Default Value: Selected | |||||||||||||||||||||||
Ignore empty result | Select this checkbox to not write any document to the output view when a SELECT operation does not produce any result. If this checkbox is not selected and the Pass-through checkbox is selected, the input document is passed through to the output view. Default Value: Not selected | |||||||||||||||||||||||
Number of Retries | 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. Default Value: 0
| |||||||||||||||||||||||
Retry Interval (seconds) | Specify the time interval between two successive retry requests. A retry happens only when the previous attempt resulted in an exception. Default Value: 1 | |||||||||||||||||||||||
Use Result Query | Select this checkbox to write the query execution result to the Snap's output view after the successful execution. The output of the Snap will be enclosed within the key This option allows users to effectively track the query's execution by clearly indicating the successful execution and the number of records affected, if any, after the execution. | |||||||||||||||||||||||
Handle Timestamp and Date Time Data | Specify how the Snap must handle timestamp and date time data. The available options are:
Default value: Default Date Time format in UTC Time Zone
| |||||||||||||||||||||||
Manage Queued Queries | Select an option from the list to determine whether the Snap should continue or cancel the execution of the queued Snowflake Execute SQL queries when you stop the Pipeline. The available options are:
Default value: Continue to execute queued queries when pipeline is stopped or if it fails | |||||||||||||||||||||||
|
|
Examples
Snowflake Execute with Use Result Query enabled
This example Pipeline demonstrates how to insert data into a table using the Snowflake Execute Snap.
First, we configure the Snowflake Execute Snap as follows. Note that we select the Use Result Query checkbox to view the statement result output.
Upon execution, we see the following output enclosed within the key Result Query.
The following screenshot displays the output preview when we disable the Use Result Query checkbox.
Executing the Snowflake SQL query using the Execute Snap
The following example demonstrates the execution of Snowflake SQL query using the Snowflake Execute Snap.
First, we configure the Execute Snap with this query—select * from "PRASANNA"."ADOBEDATA" , which returns the data from ADOBEDATA.
Upon successful execution, the Snap displays the following output in its data preview.
Snowflake Execute Snap supports UDFs
User-defined functions (UDFs) created in the Snowflake console can be executed using Snowflake - Execute Snap. In the following example, the SQL statement is defined and then the Snap is executed with that conditions.
First, the Snowflake Execute Snap is used to give the user-defined SQL statement. area_of_circle(3.0) is a UDF here. The Snap settings and the output view are as follows:
Then the Mapper Snap is used to define columns that need to be picked up from the Output of the Snowflake Execute.
See Also
https://docs.snowflake.com/en/developer-guide/udf/sql/udf-sql-scalar-functions.html
https://docs.snowflake.com/en/sql-reference/udf-overview.html
https://docs.snowflake.com/en/user-guide-getting-started.html
Insert excerpt | ||||||
---|---|---|---|---|---|---|
|