SnowConvert AI - Problemas do Sybase IQ¶
Nota
Escopo de conversão
O SnowConvert AI para Sybase IQ atualmente é compatível com avaliação e tradução de TABLES e VIEWS. Embora o SnowConvert AI possa reconhecer outros tipos de instruções, elas não são totalmente compatíveis.
Esta página fornece uma referência abrangente de como o SnowConvert AI traduz elementos de gramática do Sybase IQ para equivalentes do Snowflake. Nesta referência de tradução, você encontrará exemplos de código, resultados de equivalência funcional, principais diferenças, recomendações, problemas conhecidos e descrições de cada transformação.
SSC-EWI-SY0001¶
Valor padrão incompatível no Snowflake.
Gravidade¶
High
Descrição¶
O Snowflake não é compatível com o uso dos seguintes valores padrão.
CURRENT REMOVE USER
LAST USER
CURRENT PUBLISHER
Exemplos de código¶
Código de entrada:¶
Sybase¶
create table t1
(
col1 varchar default current remote user,
col2 varchar default last user,
col3 varchar default current publisher
);
Código gerado:¶
Snowflake¶
CREATE OR REPLACE TABLE t1 (
col1 VARCHAR default
!!!RESOLVE EWI!!! /*** SSC-EWI-SY0001 - UNSUPPORTED DEFAULT VALUE CURRENT REMOTE USER IN SNOWFLAKE ***/!!!
current remote user,
col2 VARCHAR default
!!!RESOLVE EWI!!! /*** SSC-EWI-SY0001 - UNSUPPORTED DEFAULT VALUE LAST USER IN SNOWFLAKE ***/!!!
last user,
col3 VARCHAR default
!!!RESOLVE EWI!!! /*** SSC-EWI-SY0001 - UNSUPPORTED DEFAULT VALUE CURRENT PUBLISHER IN SNOWFLAKE ***/!!!
current publisher
)
;
Práticas recomendadas¶
Se precisar de mais suporte, envie um e-mail para snowconvert-support@snowflake.com
SSC-EWI-SY0002¶
Sintaxe de tabela remota incompatível no Snowflake.
Gravidade¶
High
Descrição¶
A sintaxe de tabela remota do Sybase IQ não é compatível com o Snowflake.
Exemplos de código¶
Código de entrada:¶
Sybase¶
CREATE TABLE remote_data(
remote_id INT
)
AT 'remote_server;remote_db;owner;remote_object';
Código gerado:¶
Snowflake¶
CREATE OR REPLACE TABLE remote_data (
remote_id INT
)
!!!RESOLVE EWI!!! /*** SSC-EWI-SY0002 - UNSUPPORTED REMOTE TABLE SYNTAX ***/!!!
AT 'remote_server;remote_db;owner;remote_object'
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "sybase", "convertedOn": "07/02/2025", "domain": "no-domain-provided" }}'
;
Práticas recomendadas¶
Se precisar de mais suporte, envie um e-mail para snowconvert-support@snowflake.com
SSC-EWI-SY0003¶
Restrição iq exclusiva incompatível no Snowflake.
Gravidade¶
High
Descrição¶
A restrição IQ UNIQUE especifica uma estimativa do número de valores distintos em uma coluna. O Snowflake não contém nenhuma restrição para emular esta funcionalidade.
Exemplos de código¶
Código de entrada:¶
Sybase¶
CREATE TABLE T1 (
DATA VARCHAR IQ UNIQUE(10)
)
;
Código gerado:¶
Snowflake¶
CREATE OR REPLACE TABLE T1 (
DATA VARCHAR
!!!RESOLVE EWI!!! /*** SSC-EWI-SY0003 - UNSUPPORTED IQ UNIQUE CONSTRAINT ***/!!!
IQ UNIQUE(10)
);
Práticas recomendadas¶
Se precisar de mais suporte, envie um e-mail para snowconvert-support@snowflake.com
SSC-EWI-SY0004¶
A função de tabela de sintaxe incompatível não pode receber uma consulta como parâmetro.
Gravidade¶
High
Descrição¶
O Snowflake não é compatível com a passagem de RESULTSET como parâmetro em uma chamada de função de valor de tabela.
Exemplos de código¶
Código de entrada:¶
Sybase¶
SELECT
*
FROM
MyProcedure(TABLE (SELECT * FROM TABLE1));
Código gerado:¶
Snowflake¶
SELECT
*
FROM
TABLE(MyProcedure(
!!!RESOLVE EWI!!! /*** SSC-EWI-SY0004 - UNSUPPORTED SYNTAX TABLE FUNCTION CAN'T RECEIVE A QUERY AS PARAMETER ***/!!!
TABLE(SELECT * FROM TABLE1)));
Práticas recomendadas¶
Se precisar de mais suporte, envie um e-mail para snowconvert-support@snowflake.com
SSC-EWI-SY0005¶
A função de tabela de sintaxe incompatível não pode ser usada com a expressão
Gravidade¶
High
Descrição¶
O Snowflake é incompatível com a especificação de janelas em uma chamada de função de valor de tabela.
Exemplos de código¶
Código de entrada:¶
Sybase¶
SELECT * FROM
MyProcedure(
TABLE (SELECT * FROM TABLE1)
OVER (PARTITION BY Col1 ORDER BY Col2 DESC));
Código gerado:¶
Snowflake¶
SELECT
*
FROM
TABLE(MyProcedure(
!!!RESOLVE EWI!!! /*** SSC-EWI-SY0004 - UNSUPPORTED SYNTAX TABLE FUNCTION CAN'T RECEIVE A QUERY AS PARAMETER ***/!!!
TABLE(
SELECT
*
FROM
TABLE1
)
!!!RESOLVE EWI!!! /*** SSC-EWI-SY0005 - UNSUPPORTED SYNTAX TABLE FUNCTION CAN'T BE USED WITH OVER EXPRESSION ***/!!!
OVER (
PARTITION BY
Col1
ORDER BY Col2 DESC)));
Práticas recomendadas¶
Se precisar de mais suporte, envie um e-mail para snowconvert-support@snowflake.com
SSC-EWI-SY0006¶
A cadeia de caracteres aberta não é compatível com o Snowflake.
Gravidade¶
High
Descrição¶
O Snowflake não é compatível com a funcionalidade OPENSTRING.
Exemplos de código¶
Código de entrada:¶
Sybase¶
SELECT * FROM
OPENSTRING (FILE '/path/to/file.txt')
WITH (Col1 INT, Col2 VARCHAR(20)) AS OS;
Código gerado:¶
Snowflake¶
SELECT
*
FROM
!!!RESOLVE EWI!!! /*** SSC-EWI-SY0006 - OPEN STRING IS NOT SUPPORTED IN SNOWFLAKE ***/!!!
OPENSTRING (FILE '/path/to/file.txt')
WITH (Col1 INT, Col2 VARCHAR(20)) AS OS;
Práticas recomendadas¶
Se precisar de mais suporte, envie um e-mail para snowconvert-support@snowflake.com
SSC-EWI-SY0007¶
Tabela derivada DML incompatível com o Snowflake.
Gravidade¶
High
Descrição¶
No Python, durante a execução, a instrução DML especificada na tabela derivada de dml é executada primeiro, e as linhas afetadas por esse DML se materializam em uma tabela temporária cujas colunas são descritas pela cláusula REFERENCING. A tabela temporária representa o conjunto de resultados da tabela derivada de dml. O Snowflake é incompatível com esse comportamento.
Exemplos de código¶
Código de entrada:¶
Sybase¶
SELECT * FROM (INSERT INTO TABLE1 (Col1, Col2) VALUES (1, 'test')) REFERENCING (FINAL AS F);
SELECT * FROM (DELETE FROM TABLE1) REFERENCING (FINAL AS F);
SELECT * FROM (UPDATE TABLE1 SET A = 1) REFERENCING (FINAL AS F);
Código gerado:¶
Snowflake¶
SELECT
*
FROM
!!!RESOLVE EWI!!! /*** SSC-EWI-SY0007 - DML DERIVED TABLE NOT SUPPORTED IN SNOWFLAKE ***/!!!
(
INSERT INTO TABLE1 (Col1, Col2) VALUES (1, 'test')
)
REFERENCING
(FINAL AS F);
SELECT
*
FROM
!!!RESOLVE EWI!!! /*** SSC-EWI-SY0007 - DML DERIVED TABLE NOT SUPPORTED IN SNOWFLAKE ***/!!!
(
DELETE FROM TABLE1
)
REFERENCING
(FINAL AS F);
SELECT
*
FROM
!!!RESOLVE EWI!!! /*** SSC-EWI-SY0007 - DML DERIVED TABLE NOT SUPPORTED IN SNOWFLAKE ***/!!!
(
UPDATE TABLE1
SET
A = 1
)
REFERENCING
(FINAL AS F);
Práticas recomendadas¶
Se precisar de mais suporte, envie um e-mail para snowconvert-support@snowflake.com
SSC-EWI-SY0008¶
Contém cláusula incompatível com o Snowflake.
Gravidade¶
High
Descrição¶
No Sybase, a cláusula CONTAINS após um nome de tabela para filtrar a tabela e retornar somente aquelas linhas que correspondem à consulta de texto completo especificada com contains-query. Cada linha correspondente da tabela é retornada junto com uma coluna de pontuação que pode ser referida usando score-correlation-name. O Snowflake é incompatível com esse comportamento.
Exemplos de código¶
Código de entrada:¶
Sybase¶
SELECT * FROM TABLE1 CONTAINS (TextColumn, 'search term') AS Score;
Código gerado:¶
Snowflake¶
SELECT
*
FROM
TABLE1
!!!RESOLVE EWI!!! /*** SSC-EWI-SY0008 - CONTAINS CLAUSE NOT SUPPORTED IN SNOWFLAKE ***/!!!
CONTAINS(TextColumn,'search term') AS Score;
Práticas recomendadas¶
Se precisar de mais suporte, envie um e-mail para snowconvert-support@snowflake.com
SSC-EWI-SY0009¶
Junção de chaves incompatível com o Snowflake.
Gravidade¶
High
Descrição¶
O Snowflake é incompatível com KEY JOIN. Quando ON CLAUSE é especificada, a palavra-chave KEY é removida e tratada como INNER JOIN.
Exemplos de código¶
Código de entrada:¶
Sybase¶
SELECT * FROM TABLE1 KEY JOIN Table2 ON Table1.ID = Table2.ID;
SELECT * FROM TABLE1 KEY JOIN Table2;
Código gerado:¶
Snowflake¶
SELECT
*
FROM
TABLE1
JOIN
Table2
ON Table1.ID = Table2.ID;
SELECT
*
FROM
TABLE1
!!!RESOLVE EWI!!! /*** SSC-EWI-SY0009 - KEY JOIN NOT SUPPORTED IN SNOWFLAKE ***/!!!
KEY JOIN
Table2;
Práticas recomendadas¶
Se precisar de mais suporte, envie um e-mail para snowconvert-support@snowflake.com