Varray Type Definition
This is a translation reference to convert the Oracle Varray Declaration to Snowflake
Last updated
This is a translation reference to convert the Oracle Varray Declaration to Snowflake
Last updated
This section is a work in progress, information may change in the future.
A varray (variable-size array) is an array whose number of elements can vary from zero (empty) to the declared maximum size.
To access an element of a varray variable, use the syntax
variable_name(index)
. The lower bound ofindex
is 1; the upper bound is the current number of elements. The upper bound changes as you add or delete elements, but it cannot exceed the maximum size. When you store and retrieve a varray from the database, its indexes and element order remain stable.()
For the translation, the type definition is replaced by an ARRAY and then its usages are changed accordingly across any operations. Please note how the translation for Nested Tables and Varrays are the same.
In order to define a varray type, the syntax is as follows:
To declare a variable of this type:
This illustrates how three different ways to create a varray, and how to migrate these definitions for the variables.
SnowConvert does not support translating these elements.
Oracle's indexes start at 1, on Snowflake they will begin at 0.
Since the ARRAY datatype can become sparse, care should be taken when performing additions or deletions of the array. Using after such operations can be helpful if the density is a concern.
: Functionality is not currently supported by Snowflake Scripting.
: Custom type usage changed to variant.
: Pending Functional Equivalence Review.
: The Following Assignment Statement is Not Supported by Snowflake Scripting.
: DBMS_OUTPUT.PUTLINE check UDF implementation.