SnowConvert: SQL Server¶
Was ist SnowConvert for SQL Server?¶
SnowConvert ist eine Software, die SQL Server-Skripte versteht und diesen Quellcode in funktional gleichwertigen Snowflake-Code umwandelt.
Konvertierungstypen
Konkret führt SnowConvert for SQL Server die folgenden Konvertierungen durch:
SQL Server in Snowflake SQL¶
SnowConvert versteht den Quellcode von SQL Server und konvertiert die Datendefinitionssprache (Data Definition Language, DDL), Datenbearbeitungssprache (Data Manipulation Language, DML) und Funktionen im Quellcode in das entsprechenden SQL im Ziel: Snowflake.
Beispielcode¶
Grundlegender SQL Server-Eingabecode:
CREATE TABLE Persons (
PersonID int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
);
Snowflake-SQL-Ausgabecode:
CREATE OR REPLACE TABLE Persons (
PersonID INT,
LastName VARCHAR(255),
FirstName VARCHAR(255),
Address VARCHAR(255),
City VARCHAR(255)
)
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},{"attributes":{"component":"transact"}}'
;
Wie Sie sehen können, bleibt die Struktur größtenteils gleich. Es gibt einige Fälle, in denen die Datentypen umgewandelt werden müssen, zum Beispiel:
Gespeicherte SQL Server-Prozeduren in JavaScript, das in Snowflake SQL eingebettet ist¶
SnowConvert akzeptiert gespeicherte SQL Server-Prozeduren und konvertiert sie in JavaScript, das in Snowflake SQL eingebettet ist. Die CREATE PROCEDURE von SQL Server wird durch die CREATE OR REPLACE PROCEDURE von Snowflake ersetzt. JavaScript wird als Skriptsprache aufgerufen, und alle inneren Anweisungen werden in JavaScript konvertiert.
Beispielcode¶
Grundlegende gespeicherte SQL Server-Prozedur:
CREATE PROCEDURE SelectAllCustomers
AS
SELECT * FROM Customers
GO;
Snowflake-SQL-Ausgabecode, mit eingebettetem JavaScript:
-- Additional Params: -t JavaScript
CREATE OR REPLACE PROCEDURE SelectAllCustomers ()
RETURNS STRING
LANGUAGE JAVASCRIPT
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},"attributes":{"component":"transact"}}'
EXECUTE AS CALLER
AS
$$
// REGION SnowConvert Helpers Code
// END REGION
EXEC(`SELECT
*
FROM
Customers`);
$$;
!!!RESOLVE EWI!!! /*** SSC-EWI-0040 - THE STATEMENT IS NOT SUPPORTED IN SNOWFLAKE ***/!!!
;
Bei der Erstellung des JavaScript-Codes wird ein Teil des Codes als helper hinzugefügt, der für eine einfachere Umwandlung des Inhalts der Prozedur erforderlich ist.
Sie können damit rechnen, dass Warnungen mit einem zugehörigen Code angezeigt werden, damit Sie herausfinden können, was im konvertierten Code passiert. (Siehe Probleme und Problembehandlung)
SnowConvert-Terminologie¶
Bevor wir uns in der Magie dieser Codekonvertierungen verlieren, hier ein paar Begriffe/Definitionen, damit Sie wissen, was wir meinen, wenn wir sie in der gesamten Dokumentation verwenden:
SQL (Structured Query Language):_ Die Standardsprache zum Speichern, Bearbeiten und Abfragen von Daten in den meisten modernen Datenbankarchitekturen.
SnowConvert_: Die Software, die Ihre SQL Server-Dateien sicher und automatisch in die Snowflake Cloud-Datenplattform konvertiert.
Konvertierungsregel oder Transformationsregel: Regeln, die es SnowConvert ermöglichen, einen Teil des Quellcodes in den erwarteten Zielcode zu konvertieren.
Parsen: Parsen oder Parsing ist ein erster Prozess, der von SnowConvert durchgeführt wird, um den Quellcode zu verstehen und eine interne Datenstruktur aufzubauen, die für die Ausführung der Konvertierungsregeln erforderlich ist.
Auf den nächsten Seiten erfahren Sie mehr über die Art von Konvertierungen, zu denen SnowConvert für SQL Server in der Lage ist. Wenn Sie bereit sind, loszulegen, besuchen Sie die Seite Erste Schritte in dieser Dokumentation.