SnowConvert AI - Oracle変換設定¶
一般的な変換設定¶
オブジェクトの変換¶
.png)
同義語を変換する: 同義語を変換するかどうかを示すフラグ。デフォルトではtrueに設定されています。
パッケージを新しいスキーマに変換する: パッケージを新しいスキーマに変換するかどうかを示すフラグ。
フラグを有効や無効にするプロシージャの名前を確認してください。
入力
CREATE OR REPLACE PACKAGE emp_mgmt AS
PROCEDURE remove_emp (employee_id NUMBER );
END emp_mgmt;
CREATE OR REPLACE PACKAGE BODY emp_mgmt AS
PROCEDURE remove_emp (employee_id NUMBER) IS
BEGIN
DELETE FROM employees
WHERE employees.employee_id = remove_emp.employee_id;
tot_emps := tot_emps - 1;
END;
END emp_mgmt;
出力デフォルト
CREATE SCHEMA IF NOT EXISTS emp_mgmt
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},"attributes":{"component":"oracle"}}'
;
CREATE OR REPLACE PROCEDURE emp_mgmt.remove_emp (employee_id NUMBER(38, 18))
RETURNS VARCHAR
LANGUAGE SQL
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},"attributes":{"component":"oracle"}}'
EXECUTE AS CALLER
AS
$$
BEGIN
DELETE FROM
employees
WHERE employees.employee_id = remove_emp.employee_id;
tot_emps :=
!!!RESOLVE EWI!!! /*** SSC-EWI-OR0036 - TYPES RESOLUTION ISSUES, ARITHMETIC OPERATION '-' MAY NOT BEHAVE CORRECTLY BETWEEN unknown AND Number ***/!!!
tot_emps - 1;
END;
$$;
disablePackagesAsSchemas パラメーター付きの出力
-- Additional Params: --disablePackagesAsSchemas
CREATE OR REPLACE PROCEDURE EMP_MGMT_REMOVE_EMP (employee_id NUMBER(38, 18))
RETURNS VARCHAR
LANGUAGE SQL
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},"attributes":{"component":"oracle"}}'
EXECUTE AS CALLER
AS
$$
BEGIN
DELETE FROM
employees
WHERE employees.employee_id = remove_emp.employee_id;
tot_emps :=
!!!RESOLVE EWI!!! /*** SSC-EWI-OR0036 - TYPES RESOLUTION ISSUES, ARITHMETIC OPERATION '-' MAY NOT BEHAVE CORRECTLY BETWEEN unknown AND Number ***/!!!
tot_emps - 1;
END;
$$;
タイムスタンプとして日付を変換する:
SYSDATE を CURRENT_DATE または CURRENT_TIMESTAMP に変換すべきかどうかを示すフラグ。これは、 TIMESTAMP に変換されるすべての DATE 列にも影響します。
入力
CREATE TABLE DATE_TABLE(
DATE_COL DATE
);
SELECT SYSDATE FROM DUAL;
出力デフォルト
CREATE OR REPLACE TABLE DATE_TABLE (
DATE_COL TIMESTAMP /*** SSC-FDM-OR0042 - DATE TYPE COLUMN HAS A DIFFERENT BEHAVIOR IN SNOWFLAKE. ***/
)
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},"attributes":{"component":"oracle"}}'
;
SELECT
CURRENT_TIMESTAMP()
FROM DUAL;
disableDateAsTimestamp パラメーター付きの出力
-- Additional Params: --disableDateAsTimestamp
CREATE OR REPLACE TABLE DATE_TABLE (
DATE_COL DATE /*** SSC-FDM-OR0042 - DATE TYPE COLUMN HAS A DIFFERENT BEHAVIOR IN SNOWFLAKE. ***/
)
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},"attributes":{"component":"oracle"}}'
;
SELECT
CURRENT_DATE()
FROM DUAL;
OUTER JOINS を ANSI 構文に変換する: 外側結合を ANSI 構文のみに変換するかどうかを示すフラグ。
データ変換タイプ: JSON ファイルをアップロードして、データ型の基点と列名を考慮した特定のデータ型を定義することができます。
一般結果タブ¶

Comment objects with missing dependencies: このフラグは、ユーザーが依存関係が欠落しているノードにコメントしたいかどうかを示します。
入力ファイルのエンコードを設定する: 詳しくは 一般変換設定 を確認してください。
注釈
すべてのサポート言語に適用される設定を確認するには、次の 記事 をご覧ください。
DB オブジェクト名の設定¶
.png)
スキーマ: 文字列値は、適用するカスタムスキーマ名を指定します。指定しない場合は、元のデータベース名が使用されます。例: DB1.myCustomSchema.Table1。
データベース: 文字列値は、適用するカスタムデータベース名を指定します。例: MyCustomDB.PUBLIC.Table1。
デフォルト: 上記のいずれの設定もオブジェクト名には使用されません。
コード準備設定¶
.png)
説明¶
Prepare my code: 解析と変換の前に入力コードを処理すべきかどうかを示すフラグです。これは、構文解析プロセスを改善するのに役立ちます。デフォルトでは、 FALSE に設定されています。
入力コードのトップレベルオブジェクトを複数のファイルに分割します。フォルダーは以下のように構成されます。
コピー
└───A new folder named ''[input_folder_name]_Processed''
└───Top-level object type
└───Schema name
例¶
入力¶
├───in
│ DDL_Packages.sql
│ DDL_Procedures.sql
│ DDL_Tables.sql
出力¶
ファイル名は、入力ファイルのトップレベルのオブジェクトの名前であると仮定します。
├───in_Processed
├───package
│ └───MY_SCHEMA
│ MY_FIRST_PACKAGE.sql
│ ANOTHER_PACKAGE.sql
│
├───procedure
│ └───MY_SCHEMA
│ A_PROCEDURE.sql
│ ANOTHER_PROCEDURE.sql
│ YET_ANOTHER_PROCEDURE.sql
│
└───table
└───MY_SCHEMA
MY_TABLE.sql
ADDITIONAL_TABLE.sql
THIRD_TABLE.sql
「schema name」フォルダーの中には、入力コードのトップレベルオブジェクトと同じ数のファイルがあるはずです。また、複数の同じタイプのトップレベルオブジェクトが同じ名前を持つ場合、いくつかのファイルのコピーを持つことが可能です。この場合、ファイル名は昇順に列挙されます。

要件 ¶
トップレベルオブジェクトを識別するには、その宣言の前にタグをコメントに含める必要があります。抽出 スクリプトは、これらのタグを生成します。
タグは次の形式に従ってください。
<sc-top_level_object_type>top_level_object_name</sc-top_level_object_type>
次の例に従うことができます。
/* <sc-table> MY_SCHEMA.MY_TABLE</sc-table> */
CREATE TABLE "MY_SCHEMA"."MY_TABLE" (
"MY_COLUMN" VARCHAR2(128)
) ;
変換率設定¶
.png)
このページでは、変換に成功したコードのパーセントを、コードの行数で計算するか、文字数の合計で計算するかを選択できます。文字変換率 がデフォルトのオプションです。ドキュメントページ ですべての率に関するドキュメントを参照できます。
ストアドプロシージャターゲット言語設定¶
.png)
このページでは、ストアドプロシージャをSnow SQL に埋め込まれた JavaScript に移行するか、Snowflake Scriptingに移行するかを選択できます。デフォルトのオプションはSnowflake Scriptingです。
Reset Settings: 設定のリセットオプションは、すべてのページに表示されます。変更を加えた場合は、 SnowConvert AI を元のデフォルト設定にリセットすることができます。