MSCEWI2006
Column name not supported.
Last updated
Column name not supported.
Last updated
This is a deprecated version of the SnowConvert documentation, please visit the official site .
Medium
Some column names that are supported for Teradata are not supported for Snowflake, such as reserved names. You can review the details about reserved word in the snowflake documentation:
In general the following identifiers:
ALL
ALTER
AND
ANY
AS
BETWEEN
BY
CHECK
COLUMN
CONNECT
CONSTRAINT
CREATE
CURRENT
CURRENT_DATE
CURRENT_TIME
CURRENT_TIMESTAMP
CURRENT_USER
DELETE
DISTINCT
DROP
ELSE
EXISTS
FOLLOWING
FOR
FROM
GRANT
GROUP
HAVING
ILIKE
IN
INCREMENT
INSERT
INTERSECT
INTO
IS
LIKE
LOCALTIME
LOCALTIMESTAMP
MINUS
NOT
NULL
OF
ON
OR
ORDER
QUALIFY
REGEXP
REVOKE
RLIKE
ROW
ROWS
SAMPLE
SELECT
SET
SOME
START
TABLE
TABLESAMPLE
THEN
TO
TRIGGER
UNION
UNIQUE
UPDATE
VALUES
WHENEVER
WHERE
WITH
When found as column in a table definition will be renamed to XXX_columname_XXX.
This will avoid issues when running the code in snowflake. These renaming is used to allow easy identification of these columns.
Consider renaming the columns that use names that are not supported in Snowflake.
If you are using MacOS a simple one-liner like this:
find . -name '*.
sql' -print0 | xargs -0 sed -i "" "s/XXX_GROUP_XXX/\"GROUP\"/g"
can be used for example to change all the XXX_GROUP_XXX
identifiers.
In Windows you can use a Powershell snippet like this:
Get-ChildItem -Filter . -Recurse | where {-not $.psiscontainer} | Foreach-Object {
$c = ($ | Get-Content)
$pattern = 'XXX_GROUP_XXX' $replacement = '"GROUP"' If ($c | Select-String -Pattern $pattern) { $c = $c -creplace $pattern, $replacement [IO.File]::WriteAllText($_.FullName, ($c -join “rn”)) } }
You can use double quotes with these identifiers but be aware that unless you use the the identifiers will be case-sensitive.
If you need more support, you can email us at