MSCEWI3053

User defined function was transformed to a Snowflake procedure.

This EWI is deprecated. Please see MSCEWI1068 instead.

Severity

Low

Description

Snowflake user defined functions do not support the same features as Oracle. To maintain the functional equivalence the function is transformed to a Snowflake stored procedure. This will affect their usage in queries.

Example Code

Input Code:

CREATE OR REPLACE FUNCTION FUNC01(x NUMBER) RETURN NUMBER AS
  VAR1 NUMBER;
  BEGIN
   -- some pl sql statements
   RETURN VAR1;
  END FUNC01;

Output Code:

/*** MSC-ERROR - MSCEWI3053 - USER DEFINED FUNCTION WAS TRANSFORMED TO SNOWFLAKE PROCEDURE ***/
CREATE OR REPLACE PROCEDURE PUBLIC.FUNC01(x FLOAT)
RETURNS FLOAT
LANGUAGE JAVASCRIPT
EXECUTE AS CALLER
AS
$$
   /* mobilize helpers */
   /* pl sql statements translation */
   return VAR1;
$$;

Recommendations

Last updated