SnowConvert AI - PostgreSQL - CREATE TABLE¶
Translation from PostgreSQL to Snowflake
適用先¶
PostgreSQL
Greenplum
Netezza
説明¶
PostgreSQLで新しいテーブルを作成します。列のリストを定義し、それぞれの列は異なる型のデータを保持します。テーブルの所有者は、CREATE TABLEコマンドの発行者です。
詳しくは、 CREATE TABLE のドキュメントをご参照ください。
文法構文¶
テーブルオプション¶
TEMPORARY | TEMP、またはIF NOT EXISTS¶
Hint
この構文はSnowflakeで完全にサポートされています。
GLOBAL | LOCAL¶
注釈
Snowflakeではこの構文は必要ありません。
PostgreSQLのドキュメントによると、GLOBAL | LOCAL は、SQL Standardとの互換性のために存在しますが、PostgreSQLでは何の効果もなく、非推奨となっています。そのため、SnowConvert AIでは、移行プロセス中にこれらのキーワークは削除されます。
サンプルソース¶
入力コード:
PostgreSQL¶
出力コード:
Snowflake¶
UNLOGGED に TABLE¶
注釈
Snowflakeではこの構文は必要ありません。
UNLOGGEDテーブルは、先行書き込みログに書き込まれないので、スピード面で大きな利点があります。Snowflakeはこの機能をサポートしていないので、 UNLOGGED 句はコメントアウトされます。
コード例¶
入力コード:¶
Greenplum¶
出力コード:¶
Snowflake¶
列属性¶
CHECK 属性¶
Hint
This syntax is supported in Snowflake for deterministic, scalar expressions.
The CHECK clause specifies an expression producing a Boolean result that new or updated rows must satisfy for an insert or update operation to succeed. Snowflake supports CHECK constraints with deterministic, scalar expressions. Unsupported expressions (UDFs, non-deterministic functions) are flagged with SSC-EWI-0116.
Supported:
Basic CHECK constraints with scalar, deterministic expressions
Column-level and table-level CHECK constraints
Named and unnamed constraints
Unsupported (flagged with SSC-EWI-0116):
User-defined functions (UDFs)
Non-deterministic built-in functions
Context-dependent functions (e.g.,
CURRENT_TIMESTAMP,CURRENT_USER,NOW())Subqueries
文法構文
サンプルソース¶
Example 1: Basic CHECK Constraint (Supported)¶
入力コード:
PostgreSQL¶
出力コード:
Snowflake¶
Example 2: Named Table-Level CHECK Constraint¶
入力コード:
PostgreSQL¶
出力コード:
Snowflake¶
GENERATED BY DEFAULT AS IDENTITY¶
Hint
この構文はSnowflakeで完全にサポートされています。
列がデフォルトのIDENTITY列であることを指定し、列に一意の値を自動的に割り当てることができます。
文法構文
サンプルソース¶
入力コード:
PostgreSQL¶
出力コード:
Snowflake¶
テーブルの制約¶
主キー、外部キー、一意キー¶
警告
この構文はSnowflakeで部分的にサポートされています。
SnowConvert AIは、制約の定義を維持します。しかし、Snowflakeでは、一意キー、主キー、外部キーはドキュメントのために使用され、制約や一意性を強制するものではありません。テーブルの関係を記述するのに役立ちますが、データの整合性やパフォーマンスには影響しません。
テーブル属性¶
LIKEオプション¶
警告
この構文はSnowflakeで部分的にサポートされています。
LIKE 句は、新しいテーブルが自動的にすべての列名、そのデータ型、およびそれらのnot-null制約をコピーするテーブルを指定します。PostgreSQLはいくつかのオプションをサポートしていますが、Snowflakeはサポートしていませんので、SnowConvert AIではそのようなオプションは削除されます。
文法構文¶
サンプルソースパターン¶
入力コード:
PostgreSQL¶
出力コード:
Snowflake¶
ON COMMIT¶
警告
この構文は部分的にサポートされています。
コミット時の一時テーブルの動作を指定します。
文法構文¶
サンプルソースパターン¶
入力コード:¶
PostgreSQL¶
出力コード:¶
Snowflake¶
PARTITIONBY、USING、TABLESPACE、およびWITH¶
注釈
Snowflakeではこの構文は必要ありません。
Snowflakeでは、PostgreSQLとは異なり、手動で設定できるデータストレージを自動的に処理するため、これらの句は不要です。このため、これらの句は移行中に削除されます。