SnowConvert AI - Sybase IQ 문제¶
참고
변환 범위
Sybase IQ용 SnowConvert AI는 현재 TABLES 및 VIEWS에 대한 평가 및 변환을 지원합니다. SnowConvert AI는 다른 유형의 문을 인식할 수 있지만, 이러한 문 유형이 완전히 지원되지는 않습니다.
이 페이지에서는 SnowConvert AI에서 Sybase IQ 문법 요소를 Snowflake에 해당하는 요소로 변환하는 방법에 대한 포괄적인 참조를 제공합니다. 이 변환 참조에서는 각 변환에 대한 코드 예제, 기능적 동등성 결과, 주요 차이점, 권장 사항, 알려진 문제, 설명을 찾을 수 있습니다.
SSC-EWI-SY0001¶
Snowflake에서 지원되지 않는 기본값입니다.
심각도¶
높음
설명¶
Snowflake는 다음 기본값 사용을 지원하지 않습니다.
CURRENT REMOVE USER
LAST USER
CURRENT PUBLISHER
코드 예제¶
입력 코드:¶
Sybase¶
create table t1
(
col1 varchar default current remote user,
col2 varchar default last user,
col3 varchar default current publisher
);
생성된 코드:¶
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
)
;
모범 사례¶
추가 지원이 필요한 경우 snowconvert-support@snowflake.com으로 이메일을 보내주세요.
SSC-EWI-SY0002¶
Snowflake에서 지원되지 않는 원격 테이블 구문입니다.
심각도¶
높음
설명¶
Sybase IQ 원격 테이블 구문은 Snowflake에서 지원되지 않습니다.
코드 예제¶
입력 코드:¶
Sybase¶
CREATE TABLE remote_data(
remote_id INT
)
AT 'remote_server;remote_db;owner;remote_object';
생성된 코드:¶
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" }}'
;
모범 사례¶
추가 지원이 필요한 경우 snowconvert-support@snowflake.com으로 이메일을 보내주세요.
SSC-EWI-SY0003¶
Snowflake에서 지원되지 않는 IQ 고유 제약 조건입니다.
심각도¶
높음
설명¶
IQ UNIQUE 제약 조건은 열에 있는 고유 값 수의 추정치를 지정합니다. Snowflake에는 이 기능을 에뮬레이트하기 위한 제약 조건이 없습니다.
코드 예제¶
입력 코드:¶
Sybase¶
CREATE TABLE T1 (
DATA VARCHAR IQ UNIQUE(10)
)
;
생성된 코드:¶
Snowflake¶
CREATE OR REPLACE TABLE T1 (
DATA VARCHAR
!!!RESOLVE EWI!!! /*** SSC-EWI-SY0003 - UNSUPPORTED IQ UNIQUE CONSTRAINT ***/!!!
IQ UNIQUE(10)
);
모범 사례¶
추가 지원이 필요한 경우 snowconvert-support@snowflake.com으로 이메일을 보내주세요.
SSC-EWI-SY0004¶
지원되지 않는 구문 테이블 함수는 쿼리를 매개 변수로 받을 수 없습니다.
심각도¶
높음
설명¶
Snowflake는 테이블 반환 함수 호출에서 RESULTSET을 매개 변수로 전달하는 것을 지원하지 않습니다.
코드 예제¶
입력 코드:¶
Sybase¶
SELECT
*
FROM
MyProcedure(TABLE (SELECT * FROM TABLE1));
생성된 코드:¶
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)));
모범 사례¶
추가 지원이 필요한 경우 snowconvert-support@snowflake.com으로 이메일을 보내주세요.
SSC-EWI-SY0005¶
지원되지 않는 구문 Table 함수는 OVER 식과 함께 사용할 수 없습니다
심각도¶
높음
설명¶
Snowflake는 테이블 반환 함수 호출에서 Windows 사양을 지원하지 않습니다.
코드 예제¶
입력 코드:¶
Sybase¶
SELECT * FROM
MyProcedure(
TABLE (SELECT * FROM TABLE1)
OVER (PARTITION BY Col1 ORDER BY Col2 DESC));
생성된 코드:¶
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)));
모범 사례¶
추가 지원이 필요한 경우 snowconvert-support@snowflake.com으로 이메일을 보내주세요.
SSC-EWI-SY0006¶
OPENSTRING은 Snowflake에서 지원되지 않습니다.
심각도¶
높음
설명¶
Snowflake는 OPENSTRING 기능을 지원하지 않습니다.
코드 예제¶
입력 코드:¶
Sybase¶
SELECT * FROM
OPENSTRING (FILE '/path/to/file.txt')
WITH (Col1 INT, Col2 VARCHAR(20)) AS OS;
생성된 코드:¶
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;
모범 사례¶
추가 지원이 필요한 경우 snowconvert-support@snowflake.com으로 이메일을 보내주세요.
SSC-EWI-SY0007¶
DML 파생 테이블은 Snowflake에서 지원되지 않습니다.
심각도¶
높음
설명¶
Sybase에서는 실행 중에 DML 파생 테이블에 지정된 DML 문이 먼저 실행되며, 해당 DML의 영향을 받는 행은 REFERENCING 절에서 언급된 열이 있는 임시 테이블로 구체화됩니다. 임시 테이블은 DML 파생 테이블의 결과 세트를 나타냅니다. Snowflake는 이 동작을 지원하지 않습니다.
코드 예제¶
입력 코드:¶
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);
생성된 코드:¶
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);
모범 사례¶
추가 지원이 필요한 경우 snowconvert-support@snowflake.com으로 이메일을 보내주세요.
SSC-EWI-SY0008¶
Contains 절은 Snowflake에서 지원되지 않습니다.
심각도¶
높음
설명¶
Sybase에서는 테이블 이름 뒤에 CONTAINS 절을 사용하여 테이블을 필터링하고 CONTAINS 쿼리로 지정된 전체 텍스트 쿼리와 일치하는 행만 반환합니다. 테이블에서 일치하는 모든 행은 점수-상관 관계-이름을 사용하여 참조할 수 있는 점수 열과 함께 반환됩니다. Snowflake는 이 동작을 지원하지 않습니다.
코드 예제¶
입력 코드:¶
Sybase¶
SELECT * FROM TABLE1 CONTAINS (TextColumn, 'search term') AS Score;
생성된 코드:¶
Snowflake¶
SELECT
*
FROM
TABLE1
!!!RESOLVE EWI!!! /*** SSC-EWI-SY0008 - CONTAINS CLAUSE NOT SUPPORTED IN SNOWFLAKE ***/!!!
CONTAINS(TextColumn,'search term') AS Score;
모범 사례¶
추가 지원이 필요한 경우 snowconvert-support@snowflake.com으로 이메일을 보내주세요.
SSC-EWI-SY0009¶
KEY JOIN은 Snowflake에서 지원되지 않습니다.
심각도¶
높음
설명¶
Snowflake는 KEY JOIN을 지원하지 않습니다. ON CLAUSE가 지정되면 KEY 키워드가 제거되고 INNER JOIN으로 처리됩니다.
코드 예제¶
입력 코드:¶
Sybase¶
SELECT * FROM TABLE1 KEY JOIN Table2 ON Table1.ID = Table2.ID;
SELECT * FROM TABLE1 KEY JOIN Table2;
생성된 코드:¶
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;
모범 사례¶
추가 지원이 필요한 경우 snowconvert-support@snowflake.com으로 이메일을 보내주세요.