SnowConvert AI – IBM DB2-Probleme¶
SSC-EWI-DB0001¶
WITH ROW ACCESS POLICY CLAUSE DOES NOT SUPPORT MULTIPLE DECLARATION
Schweregrad¶
Niedrig
Beschreibung¶
Diese Meldung wird angezeigt, wenn SnowConvert AI mehrere Security-Label-Column-Optionen innerhalb derselben CREATE TABLE-Klausel erkennt. Das Security-Label wird in eine Row-Access-Policy-Klausel übersetzt, und Snowflake unterstützt keine mehrfachen Deklarationen von Row-Access-Policies. Wenn also mehrere Sicherheitslabels gefunden werden, werden sie mit diesem EWI auskommentiert.
Codebeispiel¶
Eingabecode:¶
CREATE TABLE T1
(
COL1 VARCHAR(10) COLUMN SECURED WITH securityLabel1,
COL2 VARCHAR(10) COLUMN SECURED WITH securityLabel2
);
Ausgabecode:¶
CREATE TABLE T1
(
COL1 VARCHAR(10),
COL2 VARCHAR(10)
)
WITH ROW ACCESS POLICY securityLabel1 ON (
COL1
)
!!!RESOLVE EWI!!! /*** SSC-EWI-DB0001 - WITH ROW ACCESS POLICY CLAUSE DOES NOT SUPPORT MULTIPLE DECLARATION IN SNOWFLAKE ***/!!!
WITH ROW ACCESS POLICY securityLabel2 ON (
COL2
)
;
Empfehlungen¶
Überprüfen Sie Ihren Code, und stellen Sie sicher, dass nur ein Sicherheitslabel innerhalb der
CREATE TABLE-Klausel enthalten ist.Wenn Sie weitere Unterstützung benötigen, können Sie uns eine E-Mail an snowconvert-support@snowflake.com senden.
SSC-EWI-DB0003¶
PERIOD DEFINITION IS NOT SUPPORTED IN SNOWFLAKE.
Schweregrad¶
Medium
Beschreibung¶
Temporäre DB2-Tabellen haben in Snowflake kein funktionales Äquivalent. Wenn in den CREATE TABLE-Spalten eine Anwendungsperioden- oder eine Systemperioden-Temporaltabellendeklaration gefunden wird, wird diese Spalte im resultierenden Skript auskommentiert. Das Verhalten der SELECT-Anweisung wird sich in Snowflake unterscheiden, da temporale Tabellen nicht Teil der Snowflake-Lösung sind. Dies führt dazu, dass das Ergebnis abweichen kann, wenn die Select-Anweisung nur teilweise migriert wird. Weitere Informationen findest du im folgenden Beispiel.
Abfrage auswählen¶
SELECT
ID,
Start,
END
FROM
timetable
FOR system_time as of '2022-05-09-16.20.17.0';
Ergebnis¶
ID |
START |
END |
|---|---|---|
1001 |
19:45.3 |
22:39.5 |
1002 |
19:45.5 |
22:39.6 |
1003 |
19:45.6 |
22:39.8 |
1004 |
19:45.7 |
00:00.0 |
1005 |
19:45.8 |
00:00.0 |
1006 |
19:46.0 |
00:00.0 |
7 |
16:21.8 |
00:00.0 |
Wenn die Select-Anweisung teilweise migriert wird, erhalten wir ein ganz anderes Ergebnis, wie unten gezeigt.
Abfrage auswählen¶
SELECT
ID,
Start,
END
FROM
timetable
-- FOR system_time as of '2022-05-09-16.20.17.0';
Ergebnis¶
ID |
START |
END |
2001 |
22:39.5 |
00:00.0 |
2002 |
22:39.6 |
00:00.0 |
2003 |
22:39.8 |
00:00.0 |
1004 |
19:45.7 |
00:00.0 |
1005 |
19:45.8 |
00:00.0 |
1006 |
19:46.0 |
00:00.0 |
7 |
16:21.8 |
00:00.0 |
Codebeispiel¶
DB2¶
Tabelle erstellen¶
CREATE TABLE TestTable (
COL1 DATE,
COL2 DATE,
PERIOD SYSTEM_TIME (COL1, COL2),
PERIOD BUSINESS_TIME (COL1, COL2)
Abfrage auswählen¶
SELECT
*
FROM
Table1
FOR SYSTEM_TIME AS of Value
Snowflake¶
Create Table¶
CREATE TABLE TestTable (
COL1 DATE,
COL2 DATE,
!!!RESOLVE EWI!!! /*** SSC-EWI-DB0003 - PERIOD SPECIFICATION IS NOT SUPPORTED IN SNOWFLAKE. ***/!!!
PERIOD SYSTEM_TIME (COL1, COL2),
!!!RESOLVE EWI!!! /*** SSC-EWI-DB0003 - PERIOD SPECIFICATION IS NOT SUPPORTED IN SNOWFLAKE. ***/!!!
PERIOD BUSINESS_TIME (COL1, COL2)
)
Abfrage auswählen¶
SELECT
*
FROM
Table1
!!!RESOLVE EWI!!! /*** SSC-EWI-DB0003 - PERIOD SPECIFICATION IS NOT SUPPORTED IN SNOWFLAKE. ***/!!!
FOR SYSTEM_TIME AS of Value
Empfehlungen¶
Snowflake ermöglicht die Speicherung von historischen Tabellendaten bis zu 90 Tagen. Weitere Informationen dazu finden Sie unter Verstehen und Verwenden von Time Travel.
Wenn Sie weitere Unterstützung benötigen, können Sie uns eine E-Mail an snowconvert-support@snowflake.com senden.
SSC-EWI-DB0004¶
OUTER TABLE REFERENCE NOT APPLICABLE IN SNOWFLAKE
Schweregrad¶
Niedrig
Beschreibung¶
Diese Meldung wird angezeigt, wenn in einer FROM-Klausel innerhalb einer SELECT-Anweisung ein OUTER-Tabellenverweis gefunden wird. Diese Klausel wird verwendet, um Untertabellen in die Zwischenergebnistabelle der SELECT-Anweisung einzubeziehen. Untertabellen stehen in der DB2-Datenbank im Zusammenhang mit Typed Tables ), die mit der OF-Klausel der CREATE TABLE-Anweisung erstellt werden. Diese werden ebenfalls nicht in Snowflake unterstützt.
Codebeispiel¶
Eingabecode:¶
Select * from OUTER(ATable);
Select * from ONLY(ATable);
Ausgabecode:¶
Select * from
!!!RESOLVE EWI!!! /*** SSC-EWI-DB0004 - OUTER TABLE REFERENCE IS NOT SUPPORTED IN SNOWFLAKE. ***/!!!
OUTER(ATable) AS AliasName;
Select * from
ATable;
Empfehlungen¶
Wenn Sie weitere Unterstützung benötigen, können Sie uns eine E-Mail an snowconvert-support@snowflake.com senden.
SSC-EWI-DB0005¶
MANIPULATION OF DATA IN VIEWS IS NOT SUPPORTED
Schweregrad¶
Medium
Beschreibung¶
Diese Meldung wird angezeigt, wenn in einer CREATE VIEW ein Knoten oder eine Klausel gefunden wird, der bzw. die sich auf die Datenmanipulation von Zeilen in einer CREATE VIEW bezieht. Beachten Sie, dass in DB2 Zeilen direkt aus einer VIEW eingefügt oder aktualisiert werden können, während dies in Snowflake nicht unterstützt wird. Aus diesem Grund werden Knoten oder Klauseln, die sich auf diese Funktionalität beziehen, auskommentiert und es wird eine EWI hinzugefügt.
Codebeispiel¶
Eingabecode:¶
CREATE VIEW TestTableId2 AS Select * from TestTableId1 WITH ROW MOVEMENT;
Ausgabecode:¶
CREATE VIEW TestTableId2
COMMENT = '{ "origin": "sf_sc", "name": "snowconvert", "version": { "major": 0, "minor": 0, "patch": "0" }, "attributes": { "component": "db2", "convertedOn": "09/02/2025", "domain": "no-domain-provided" }}'
AS Select * from
TestTableId1
!!!RESOLVE EWI!!! /*** SSC-EWI-DB0005 - MANIPULATION OF DATA IN VIEWS IS NOT SUPPORTED. ***/!!!
WITH ROW MOVEMENT;
Empfehlungen¶
Wenn Sie weitere Unterstützung benötigen, können Sie uns eine E-Mail an snowconvert-support@snowflake.com senden.
SSC-EWI-DB0006¶
INTERMEDIATE RESULT TABLE IS NOT SUPPORTED
Schweregrad¶
Medium
Beschreibung¶
Diese Nachricht wird angezeigt, wenn eine DATA CHANGE TABLE REFERENCE in einer FROM-Klausel gefunden wird. Eine DATA CHANGE TABLE REFERENCE gibt eine Zwischentabelle an, die aus den Zeilen besteht, die durch eine UPDATE-, DELETE- oder INSERT-Anweisung geändert werden, die in der DATA CHANGE TABLE REFERENCE enthalten ist.
In Snowflake wird dies nicht unterstützt, da nicht gleichzeitig die Zeilen geändert und ein Resultset der Tabelle zurückgegeben werden kann, daher wird das Select kommentiert.
Codebeispiel¶
DB2-Eingabecode:¶
Select-Anweisung¶
SELECT
*
FROM
OLD Table(UPDATE T1 SET NAME = 'Tony' where ID = 4)
Update-Anweisung¶
UPDATE (SELECT EMPNO, SALARY, COMM,
AVG(SALARY) OVER (PARTITION BY WORKDEPT),
AVG(COMM) OVER (PARTITION BY WORKDEPT)
FROM EMPLOYEE E) AS E(EMPNO, SALARY, COMM, AVGSAL, AVGCOMM)
SET (SALARY, COMM) = (AVGSAL, AVGCOMM)
WHERE EMPNO = '000120';
UPDATE TABLE5
INCLUDE (col1 INT, col2 Varchar(10))
SET Column1 = 1;
Snowflake-Ausgabecode:¶
Select-Anweisung¶
SELECT
*
FROM
!!!RESOLVE EWI!!! /*** SSC-EWI-DB0006 - INTERMEDIATE RESULT TABLE IS NOT SUPPORTED. ***/!!!
OLD Table(UPDATE T1 SET NAME = 'Tony' where ID = 4)
Update-Anweisung¶
UPDATE
!!!RESOLVE EWI!!! /*** SSC-EWI-DB0006 - INTERMEDIATE RESULT TABLE IS NOT SUPPORTED. ***/!!!
(SELECT EMPNO, SALARY, COMM,
AVG(SALARY) OVER (PARTITION BY WORKDEPT),
AVG(COMM) OVER (PARTITION BY WORKDEPT)
FROM EMPLOYEE E) AS E(EMPNO, SALARY, COMM, AVGSAL, AVGCOMM)
SET
SALARY = AVGSAL,
COMM = AVGCOMM
WHERE EMPNO = '000120';
UPDATE TABLE5
!!!RESOLVE EWI!!! /*** SSC-EWI-DB0006 - INTERMEDIATE RESULT TABLE IS NOT SUPPORTED. ***/!!!
INCLUDE (col1 INT, col2 Varchar(10))
SET Column1 = 1;
Empfehlungen¶
Wenn Sie weitere Unterstützung benötigen, können Sie uns eine E-Mail an snowconvert-support@snowflake.com senden.
SSC-EWI-DB0007¶
QUERY AS INSERT TARGET NAME IS NOT SUPPORTED.
Schweregrad¶
Medium
Beschreibung¶
Im Gegensatz zu DB2 erlaubt Snowflake nicht, SELECT-Abfrageergebnisse als Ziel einer INSERT-Anweisung zu verwenden. Stattdessen müssen Daten direkt in Tabellen oder materialisierte Ansichten eingefügt werden.
Codebeispiel¶
DB2¶
Abfrage¶
INSERT INTO
(SELECT * FROM SOMEOTHERTABLE)
VALUES
(DEFAULT);
Snowflake¶
Abfrage¶
INSERT INTO
!!!RESOLVE EWI!!! /*** SSC-EWI-DB0007 - QUERY AS INSERT TARGET NAME IS NOT SUPPORTED ***/!!!
(SELECT * FROM SOMEOTHERTABLE)
VALUES
(DEFAULT);
Empfehlungen¶
Wenn Sie weitere Unterstützung benötigen, können Sie uns eine E-Mail an snowconvert-support@snowflake.com senden.
SSC-EWI-DB0008¶
DELETE FROM SELECT STATEMENT IS NOT SUPPORTED.
Schweregrad¶
Medium
Beschreibung¶
Snowflake unterstützt nicht die Verwendung von Auswahlabfragen in der From-Klausel einer Delete-Anweisung. Wenn die Delete-Anweisung teilweise migriert wird, erhalten wir eine unvollständige Anweisung, da die From-Klausel leer ist.
Codebeispiel¶
DB2¶
Abfrage auswählen¶
DELETE FROM (
SELECT * FROM table1
)
Snowflake¶
Abfrage auswählen¶
DELETE FROM
!!!RESOLVE EWI!!! /*** SSC-EWI-DB0008 - DELETE FROM SELECT STATEMENT IS NOT SUPPORTED. ***/!!!
(
SELECT * FROM table1
)
Empfehlungen¶
Wenn Sie weitere Unterstützung benötigen, können Sie uns eine E-Mail an snowconvert-support@snowflake.com senden.
SSC-EWI-DB0009¶
POSITIONED STATEMENT IS NOT SUPPORTED.
Schweregrad¶
Medium
Beschreibung¶
Snowflake unterstützt nicht die Verwendung von Cursorn als Teil der Delete- und Update-Anweisungen. Wenn die Anweisung teilweise migriert wird, wird die „where“-Klausel entfernt, in der der Cursor einen Teil bildet, wodurch es riskant wird, die gesamte Tabelle zu löschen oder zu aktualisieren.
Codebeispiel¶
DB2¶
Anweisung löschen¶
DELETE FROM table1
WHERE CURRENT OF cursor1
Update-Anweisung¶
UPDATE table1
SET col1 = 1
WHERE CURRENT OF cursor1
Snowflake¶
Anweisung löschen¶
DELETE FROM
table1
WHERE
!!!RESOLVE EWI!!! /*** SSC-EWI-DB0009 - POSITIONED CURRENT OF IS NOT SUPPORTED. ***/!!! CURRENT OF cursor1
Update-Anweisung¶
UPDATE TABLE1
SET Column1 = 1
WHERE
!!!RESOLVE EWI!!! /*** SSC-EWI-DB0009 - POSITIONED CURRENT OF IS NOT SUPPORTED. ***/!!!
CURRENT OF cursor1;
Empfehlungen¶
Weitere Unterstützung erhalten Sie per E-Mail unter support@mobilize.net. Alternativ können Sie eine Nachricht in unserem Forum schreiben. Wenn Sie einen Support-Vertrag mit Mobilize.Net haben, wenden Sie sich an Ihren Vertriebsingenieur, der Ihre Support-Anforderungen offenlegen kann.
SSC-EWI-DB0010¶
ATTRIBUTE NAME IS NOT SUPPORTED IN SNOWFLAKE
Schweregrad¶
Medium
Beschreibung¶
Diese Meldung wird angezeigt, wenn das Attribut eines strukturierten Typs angegeben wird, der gerade festgelegt ist (als Attributzuweisung bezeichnet). Ein strukturierter Typ kann ein Untertyp sein, der es ermöglicht, Attribute von einem Supertyp zu erben.
Snowflake unterstützt diese Arten von Strukturen nicht.
Weitere Informationen zu Strukturtypen finden Sie hier
Codebeispiel¶
DB2¶
UPDATE CIRCLES
SET C..CENTER..X = C..CENTER..Y,
C..CENTER..Y = C..CENTER..X
WHERE ID = 999;
Snowflake¶
UPDATE CIRCLES
SET
!!!RESOLVE EWI!!! /*** SSC-EWI-DB0010 - ATTRIBUTE NAME IS NOT SUPPORTED IN SNOWFLAKE ***/!!! C..CENTER..X =
!!!RESOLVE EWI!!! /*** SSC-EWI-DB0010 - ATTRIBUTE NAME IS NOT SUPPORTED IN SNOWFLAKE ***/!!! C..CENTER..Y,
!!!RESOLVE EWI!!! /*** SSC-EWI-DB0010 - ATTRIBUTE NAME IS NOT SUPPORTED IN SNOWFLAKE ***/!!!
C..CENTER..Y =
!!!RESOLVE EWI!!! /*** SSC-EWI-DB0010 - ATTRIBUTE NAME IS NOT SUPPORTED IN SNOWFLAKE ***/!!! C..CENTER..X
WHERE ID = 999
Empfehlungen¶
Wenn Sie weitere Unterstützung benötigen, können Sie uns eine E-Mail an snowconvert-support@snowflake.com senden.
SSC-EWI-DB0011¶
ASSIGNMENT CLAUSE TYPE IS NOT SUPPORTED IN SNOWFLAKE
Schweregrad¶
Medium
Beschreibung¶
Diese Nachricht wird angezeigt, wenn die Zuweisungsklausel einen Ausdruck enthält, der von Snowflake nicht unterstützt wird
Fälle¶
UPDATE-Anweisung¶
Wenn eine Zuweisungsklausel eine mehrspaltige Zuweisung einer Zeilenauswahl vorsieht, finden Sie ein Beispiel dafür im Abschnitt Code-Beispiel.
Codebeispiel¶
DB2¶
UPDATE EMPLOYEE EU
SET (EU.COM, EU.SALARY) = (SELECT ES.SALARY FROM EMPLOYEE ES WHERE ES.WORKDEPT = EU.WORKDEPT)
WHERE EU.EMPNO = '000120';
Snowflake¶
UPDATE EMPLOYEE EU
SET
!!!RESOLVE EWI!!! /*** SSC-EWI-DB0011 - ASSIGNMENT CLAUSE TYPE IS NOT SUPPORTED IN SNOWFLAKE ***/!!!
(EU.COM, EU.SALARY) = (SELECT ES.SALARY FROM
EMPLOYEE ES WHERE ES.WORKDEPT = EU.WORKDEPT)
WHERE EU.EMPNO = '000120';
Empfehlungen¶
Wenn Sie weitere Unterstützung benötigen, können Sie uns eine E-Mail an snowconvert-support@snowflake.com senden.
SSC-EWI-DB0012¶
INVALID NAME AS INSERTION TARGET, USE OF VIEW NAME IS NOT SUPPORTED IN SNOWFLAKE
Schweregrad¶
Medium
Beschreibung¶
Snowflake unterstützt die Verwendung von Ansichtsnamen in der Anweisung zum Einfügen von Zielnamen nicht.
Codebeispiel¶
DB2¶
CREATE VIEW VIEW1 AS SELECT * FROM T;
INSERT INTO VIEW1 (COL1, COL2) VALUES (NULL, DEFAULT);
Snowflake¶
CREATE VIEW PUBLIC.VIEW1
AS SELECT * FROM
PUBLIC.T;
!!!RESOLVE EWI!!! /*** SSC-EWI-DB0012 - INVALID NAME AS INSERTION TARGET, USE OF VIEW NAME IS NOT SUPPORTED IN SNOWFLAKE ***/!!!
INSERT INTO VIEW1 (COL1, COL2) VALUES (NULL,DEFAULT);
Empfehlungen¶
Wenn Sie weitere Unterstützung benötigen, können Sie uns eine E-Mail an snowconvert-support@snowflake.com senden.
SSC-EWI-DB0013¶
INVALID NAME AS DELETE TARGET, USE OF VIEW NAME IS NOT SUPPORTED IN SNOWFLAKE
Schweregrad¶
Medium
Beschreibung¶
Snowflake unterstützt die Verwendung von Ansichtsnamen in der Anweisung zum Löschen des Zielnamens. Aus diesem Grund konnte die Ergebnisabfrage nicht gültig sein
Codebeispiel¶
DB2¶
CREATE VIEW VIEW1 AS SELECT * FROM T;
DELETE FROM VIEW1
Snowflake¶
CREATE VIEW PUBLIC.VIEW1
AS SELECT * FROM
PUBLIC.T;
DELETE FROM
!!!RESOLVE EWI!!! /*** SSC-EWI-DB0013 - INVALID NAME AS DELETE TARGET, USE OF VIEW NAME IS NOT SUPPORTED IN SNOWFLAKE ***/!!!
VIEW1
Empfehlungen¶
Wenn Sie weitere Unterstützung benötigen, können Sie uns eine E-Mail an snowconvert-support@snowflake.com senden.
SSC-EWI-DB0014¶
THE USE OF EXTERNAL TABLE REFERENCES IS NOT SUPPORTED IN SNOWFLAKE
Schweregrad¶
Medium
Beschreibung¶
Snowflake unterstützt die Verwendung von externen Tabellen in der Select-Anweisung nicht. Aus diesem Grund konnte die Ergebnisabfrage nicht gültig sein
Codebeispiel¶
DB2¶
SELECT
*
FROM
EXTERNAL SOMENAME AS T1 LIKE TABLE2 USING(COMPRESS NO)
Snowflake¶
SELECT
*
FROM
!!!RESOLVE EWI!!! /*** SSC-EWI-DB0014 - THE USE OF EXTERNAL TABLE REFERENCES IS NOT SUPPORTED IN SNOWFLAKE ***/!!!
EXTERNAL SOMENAME AS T1 LIKE TABLE2 USING(COMPRESS NO)
Empfehlungen¶
Wenn Sie weitere Unterstützung benötigen, können Sie uns eine E-Mail an snowconvert-support@snowflake.com senden.