SnowConvert AI - SQL Server¶
SnowConvert AI for SQL Server とは¶
SnowConvert AI は、SQL Serverスクリプトを理解し、このソースコードを機能的に等価なSnowflakeコードに変換するソフトウェアです。
変換タイプ¶
具体的には、SnowConvert AI for SQL Serverは以下の変換を行います。
SQL ServerからSnowflake SQL へ¶
SnowConvert AI は、SQL Serverソースコードを理解し、ソースコード内のデータ定義言語(DDL)、データ操作言語(DML)、関数を、ターゲットであるSnowflake内の対応する SQL に変換します。
サンプルコード¶
SQL Serverの基本入力コード:
CREATE TABLE Persons (
PersonID int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
);
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"}}'
;
ご覧の通り、ほとんどの構造は変わりません。たとえば、データ型を変換しなければならない場合があります。
SQL ServerストアドプロシージャからSnowflake SQL に埋め込まれた JavaScript へ¶
SnowConvert AI は、SQL Serverストアドプロシージャを取得し、Snowflake SQL に埋め込まれた JavaScript に変換します。SQL Serverの CREATE PROCEDURE は、Snowflakeの CREATE OR REPLACE PROCEDURE に置き換えられます。JavaScript はスクリプト言語として呼び出され、内部ステートメントはすべて JavaScript に変換されます。
サンプルコード¶
SQL Serverの基本的なストアドプロシージャ:
CREATE PROCEDURE SelectAllCustomers
AS
SELECT * FROM Customers
GO;
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`);
$$;
JavaScript コードを作成するとき、プロシージャのコンテンツを簡単に変換するために必要な_helper_というコードが追加されます。
変換されたコードで何が起きているのかを知るために、関連するコードとともに警告が表示されることが期待できます。(参照: 問題とトラブルシューティング)
SnowConvert AI の用語¶
これらのコード変換のマジックに没頭する前に、ここで用語/定義のいくつかを紹介し、さまざまなドキュメントでこれらが使用されるときにその意味が分かるようにしておきます。
SQL (構造化クエリ言語): 大半の現代的なデータベースアーキテクチャーにおけるデータの保存、操作、検索のための標準言語。
SnowConvert AI: SQL Serverファイルを安全かつ自動的にSnowflakeクラウドデータプラットフォームに変換するソフトウェアです。
変換ルール または 変換ルール: SnowConvert AI がソースコードの一部から期待されるターゲットコードに変換できるようにするルール。
パース: パースまたは構文解析は、SnowConvert AI がソースコードを理解し、変換ルールを処理するための内部データ構造を構築するために行われる初期処理です。
次の数ページでは、SnowConvert AI for SQL Serverで実行できる変換の種類について詳しく説明します。始める準備ができたら、このドキュメントの はじめるにあたり ページをご覧ください。