OUTPUT PARAMETERS
This article is about the current transformation of the output parameters and how their functionality is being emulated.
Description
Sample Source Patterns
Sample auxiliary table
CREATE TABLE table20 ( col1 NUMBER, col2 NUMBER );CREATE TABLE table20 (
col1 NUMBER(38, 18),
col2 NUMBER(38, 18)
);Single out parameter
CREATE PROCEDURE demo.proc_with_single_output_parameters(OUT param1 NUMBER)
BEGIN
SET param1 = 100;
END;
REPLACE PROCEDURE demo.proc_calling_proc_with_single_output_parameters ()
BEGIN
DECLARE mytestvar NUMBER;
CALL demo.proc_with_single_output_parameters(mytestvar);
INSERT INTO demo.TABLE20 VALUES(mytestvar,432);
END;
CREATE OR REPLACE PROCEDURE demo.proc_with_single_output_parameters (
/*** MSC-WARNING - MSCEWI1083 - OUTPUT PARAMETERS ARE NOT SUPPORTED BUT FUNCTIONALITY IS BEING EMULATED ***/
PARAM1 FLOAT)
RETURNS VARIANT
LANGUAGE SQL
EXECUTE AS CALLER
AS
$$
BEGIN
param1 := 100;
/*** MSC-WARNING - MSCEWI1082 - AUTO-GENERATED CODE IN ORDER TO SUPPORT OUT PARAMETERS IN SNOWFLAKE SCRIPTING ***/
RETURN param1;
END;
$$;
CREATE OR REPLACE PROCEDURE demo.proc_calling_proc_with_single_output_parameters ()
RETURNS VARCHAR
LANGUAGE SQL
EXECUTE AS CALLER
AS
$$
DECLARE
call_results VARIANT;
BEGIN
LET mytestvar NUMBER(38, 18);
call_results := (
CALL demo.proc_with_single_output_parameters(:mytestvar)
);
/*** MSC-WARNING - MSCEWI1082 - AUTO-GENERATED CODE IN ORDER TO SUPPORT OUT PARAMETERS IN SNOWFLAKE SCRIPTING ***/
mytestvar := :call_results;
INSERT INTO demo.TABLE20
VALUES (:mytestvar,432);
END;
$$;
Multiple out parameter
Customer data type OUT parameters
Known Issues
1. Some data types may not work properly
Related EWIs
Last updated
Was this helpful?