SnowConvert AI - SQL Server

What is SnowConvert AI for SQL Server?

SnowConvert AI is a software that understands SQL Server scripts and converts this source code into functionally equivalent Snowflake code.

変換タイプ

Specifically, SnowConvert AI for SQL Server performs the following conversions:

SQL ServerからSnowflake SQL へ

SnowConvert AI understands the SQL Server source code and converts the Data Definition Language (DDL), Data Manipulation Language (DML), and functions in the source code to the corresponding SQL in the target: Snowflake.

サンプルコード

SQL Serverの基本入力コード:

CREATE TABLE Persons (
    PersonID int,
    LastName varchar(255),
    FirstName varchar(255),
    Address varchar(255),
    City varchar(255)
);
Copy

Snowflake SQL 出力コード:

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"}}'
;
Copy

ご覧の通り、ほとんどの構造は変わりません。たとえば、データ型を変換しなければならない場合があります。

SQL ServerストアドプロシージャからSnowflake SQL に埋め込まれた JavaScript へ

SnowConvert AI takes SQL Server stored procedures and converts them to JavaScript embedded into Snowflake SQL. SQL Server's CREATE PROCEDURE is replaced by Snowflake's CREATE OR REPLACE PROCEDURE. JavaScript is called as a scripting language, and all of the inner statements are converted to JavaScript.

サンプルコード

SQL Serverの基本的なストアドプロシージャ:

CREATE PROCEDURE SelectAllCustomers
AS
SELECT * FROM Customers
GO;
Copy

Snowflake SQL 出力コード、埋め込み 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 AI Helpers Code
   // END REGION

EXEC(`SELECT
   *
FROM
   Customers`);
$$;

!!!RESOLVE EWI!!! /*** SSC-EWI-0040 - THE STATEMENT IS NOT SUPPORTED IN SNOWFLAKE ***/!!!
;
Copy
  • JavaScript コードを作成するとき、プロシージャのコンテンツを簡単に変換するために必要な_helper_というコードが追加されます。

  • 変換されたコードで何が起きているのかを知るために、関連するコードとともに警告が表示されることが期待できます。(参照: 問題とトラブルシューティング

SnowConvert AI Terminology

これらのコード変換のマジックに没頭する前に、ここで用語/定義のいくつかを紹介し、さまざまなドキュメントでこれらが使用されるときにその意味が分かるようにしておきます。

  • SQL (構造化クエリ言語): 大半の現代的なデータベースアーキテクチャーにおけるデータの保存、操作、検索のための標準言語。

  • SnowConvert AI: the software that converts securely and automatically your SQL Server files to the Snowflake cloud data platform.

  • Conversion rule or transformation rule: rules that allow SnowConvert AI to convert from a portion of source code to the expected target code.

  • Parse: parse or parsing is an initial process done by SnowConvert AI to understand the source code and build up an internal data structure required for executing the conversion rules.

On the next few pages, you'll learn more about the kind of conversions that SnowConvert AI for SQL Server is capable of. If you're ready to get started, visit the Getting Started page in this documentation.