snow object create¶
指定された型のオブジェクトを作成します。サポートされているオブジェクトとパラメーターのリストについては、ドキュメントをご確認ください。
構文¶
snow object create
  <object_type>
  <object_attributes>
  --json <object_json>
  --if-not-exists
  --replace
  --connection <connection>
  --host <host>
  --port <port>
  --account <account>
  --user <user>
  --password <password>
  --authenticator <authenticator>
  --workload-identity-provider <workload_identity_provider>
  --private-key-file <private_key_file>
  --token <token>
  --token-file-path <token_file_path>
  --database <database>
  --schema <schema>
  --role <role>
  --warehouse <warehouse>
  --temporary-connection
  --mfa-passcode <mfa_passcode>
  --enable-diag
  --diag-log-path <diag_log_path>
  --diag-allowlist-path <diag_allowlist_path>
  --oauth-client-id <oauth_client_id>
  --oauth-client-secret <oauth_client_secret>
  --oauth-authorization-url <oauth_authorization_url>
  --oauth-token-request-url <oauth_token_request_url>
  --oauth-redirect-uri <oauth_redirect_uri>
  --oauth-scope <oauth_scope>
  --oauth-disable-pkce
  --oauth-enable-refresh-tokens
  --oauth-enable-single-use-refresh-tokens
  --client-store-temporary-credential
  --format <format>
  --verbose
  --debug
  --silent
  --enhanced-exit-codes
引数¶
- object_type
- オブジェクトの型。例: テーブル、データベース、コンピューティングプール。 
- object_attributes...
- 例えば name=my_db comment='created with Snowflake CLI' のように、key=value のペアのリストとして提供されるオブジェクト属性。 各オブジェクトで使用可能なパラメーターの完全なリストについては、ドキュメントを確認してください。 
オプション¶
- --json TEXT
- JSON 形式でのオブジェクト定義。 例: '{"name": "my_db", "comment": "created with Snowflake CLI"}'各オブジェクトで使用可能なパラメーターの完全なリストについては、ドキュメントを確認してください。 
- --if-not-exists
- 指定されたオブジェクトがまだ存在しない場合にのみ、この操作を適用します。デフォルト: false。 
- --replace
- このオブジェクトが既に存在する場合は置き換えます。デフォルト: false。 
- --connection, -c, --environment TEXT
- config.tomlファイルで定義されている接続の名前。デフォルト:- デフォルト
- --host TEXT
- 接続用のホストアドレス。接続に指定された値を上書きします。 
- --port INTEGER
- 接続のポート。接続に指定された値を上書きします。 
- --account, --accountname TEXT
- Snowflakeアカウントに割り当てられた名前。接続に指定された値を上書きします。 
- --user, --username TEXT
- Snowflakeに接続するユーザー名。接続に指定された値を上書きします。 
- --password TEXT
- Snowflakeのパスワード。接続に指定された値を上書きします。 
- --authenticator TEXT
- Snowflakeの認証コード。接続に指定された値を上書きします。 
- --workload-identity-provider TEXT
- ワークロードIDプロバイダー(AWS、AZURE、GCP、OIDC)。接続に指定された値を上書きします。 
- --private-key-file, --private-key-path TEXT
- Snowflake プライベートキーファイルへのパス。接続に指定された値を上書きします。 
- --token TEXT
- Snowflake接続時に使用する OAuth トークン。 
- --token-file-path TEXT
- Snowflake接続時に使用する OAuth トークンを含むファイルへのパス。 
- --database, --dbname TEXT
- 使用するデータベース。接続に指定された値を上書きします。 
- --schema, --schemaname TEXT
- 使用するデータベーススキーマ。接続に指定された値を上書きします。 
- --role, --rolename TEXT
- 使用するロール。接続に指定された値を上書きします。 
- --warehouse TEXT
- 使用するウェアハウス名。接続に指定された値を上書きします。 
- --temporary-connection, -x
- config で定義された接続ではなく、コマンドラインパラメーターで定義された接続を使用します。デフォルト: false。 
- --mfa-passcode TEXT
- 多要素認証(MFA)に使用するトークン。 
- --enable-diag
- 接続診断レポートを作成するかどうか。デフォルト: false。 
- --diag-log-path TEXT
- 生成されたレポートのパス。デフォルトはシステム仮ディレクトリです。デフォルト: <system_temporary_directory>. 
- --diag-allowlist-path TEXT
- allowlist パラメーターを含む JSON ファイルへのパス。 
- --oauth-client-id TEXT
- Snowflake統合のためにIDプロバイダーが提供するクライアントIDの値。 
- --oauth-client-secret TEXT
- Snowflake 統合用に ID プロバイダーが提供するクライアントシークレットの値。 
- --oauth-authorization-url TEXT
- 認証コードをドライバーに提供する ID プロバイダーエンドポイント。 
- --oauth-token-request-url TEXT
- ドライバーにアクセストークンを供給する ID プロバイダーのエンドポイント。 
- --oauth-redirect-uri TEXT
- URI 認証コードのリダイレクトに使用します。 
- --oauth-scope TEXT
- ID プロバイダー承認リクエストで要求された範囲。 
- --oauth-disable-pkce
- コード交換の証明キー (PKCE) を無効にします。デフォルト: - False。
- --oauth-enable-refresh-tokens
- 実際のアクセストークンが古くなった場合に、サイレント再認証コードを有効にします。デフォルト: - False。
- --oauth-enable-single-use-refresh-tokens
- シングルユース・更新・トークンのセマンティクスにオプトインするかどうか。デフォルト: - False。
- --client-store-temporary-credential
- 仮認証情報を保存します。 
- --format [TABLE|JSON|JSON_EXT|CSV]
- 出力形式を指定します。デフォルト: TABLE 
- --verbose, -v
- ログレベル - info以上のログエントリを表示します。デフォルト: false。
- --debug
- ログレベル - debug以上のログ エントリを表示します。デバッグログには追加情報が含まれます。デフォルト: false。
- --silent
- コンソールへの中間出力をオフにします。デフォルト: false。 
- --enhanced-exit-codes
- 終了エラーコードをエラーのタイプによって区別します。デフォルト: false。 
- --help
- このコマンドのヘルプテキストを表示します。 
使用上の注意¶
snow object create コマンドは、指定されたオブジェクト属性または定義に基づいて、以下のタイプの Snowflake オブジェクトのいずれかを作成します。
- account
- catalog-integration
- compute-pool
- database
- database-role
- dynamic-table
- event-table
- external-volume
- function
- image-repository
- managed-account
- network-policy
- notebook
- notification-integration
- pipe
- procedure
- role
- schema
- service
- stage
- stream
- table
- task
- user-defined-function
- view
- warehouse
各オブジェクトについて、オブジェクト属性またはオブジェクト定義のいずれかを使用して、適切なオブジェクトの詳細を指定する必要があります。
- object_attributesパラメーターは、オブジェクトの詳細を- <key>=<value>の一連のペアとして以下のように指定します。- snow object create database name=my_db comment="Created with Snowflake CLI" 
- --json object_definitionオプションを使って、オブジェクトの詳細を JSON のように以下のように指定します。- snow object create table name=my_table columns='[{"name":"col1","datatype":"number", "nullable":false}]' constraints='[{"name":"prim_key", "column_names":["col1"], "constraint_type":"PRIMARY KEY"}]' --database my_db --schema public 
- その他の例については 例 をご参照ください。 
注釈
以下のオブジェクト・タイプでは、 config.toml のように接続構成でデータベースを特定するか、 --database オプションを使用してコマンドに渡す必要があります。
- image-repository 
- schema 
- service 
- table 
- task 
以下のセクションでは、 Snowflake CLI がサポートするオブジェクト・タイプの属性について説明します。
他のタイプのオブジェクトの属性は、 CREATE ACCOUNT のような、対応する SQL CREATE コマンドの参照をチェックすることで見つけることができます。
コンピューティングプール・オブジェクトの属性¶
| 属性 | 説明 | 
|---|---|
| name required, string | Snowflakeオブジェクト識別子。 | 
| min_nodes 必須、 整数 | コンピューティングプールの最小ノード数。 | 
| max_nodes 必須、 整数 | コンピューティングプールの最大ノード数。 | 
| インスタンス・ファミリー required, string | インスタンスファミリーの名前。インスタンスファミリーの詳細については、 SQL CREATE COMPUTE POOL コマンドをご参照ください。 | 
| auto_resume optional, string | コンピューティングプールを必要とするステートメントが提出されたときに、コンピューティングプールを自動的に再開するかどうか。 | 
| コメント optional, string | コンピューティングプールを説明するコメント。 | 
| auto_suspend_secs optional, string | Snowflakeがコンピューティングプールを自動的に一時停止するまでの非アクティブの秒数。 | 
データベースオブジェクトの属性¶
| 属性 | 説明 | 
|---|---|
| name required, string | Snowflakeオブジェクト識別子。 | 
| コメント optional, string | データベースを説明するコメント。 | 
| データ保持時間の日数 任意、 整数 | スキーマでTime Travelアクション(CLONE および UNDROP)を実行できる日数を指定し、スキーマで作成されたすべてのテーブルのデフォルトのTime Travel保持時間数。 | 
| default_ddl_collation optional, string | データベースに追加されたすべてのスキーマとテーブルの照合仕様をデフォルトにします。このデフォルトは、スキーマおよび個々のテーブル・レベルでオーバーライドできます。 | 
| max_data_extension_time_in_days 任意、 整数 | Snowflakeがデータベース内のテーブルのデータ保持期間を延長して、テーブル上のストリームが古くなるのを防ぐことができる最大日数。 | 
| suspend_task_after_num_failures 任意、 整数 | 現在のタスクが自動的に中断される連続した失敗タスク数。 | 
| user_task_managed_initial_warehouse_size 任意、 整数 | Snowflakeが理想的なサイズを決定するためにタスク履歴を使用できるようになる前に、タスクの最初の実行にプロビジョニングするコンピューティングリソースのサイズを指定します。 可能な値は次を含みます: XSMALL 、 SMALL 、 MEDIUM 、 LARGE 、および XLARGE。 | 
| user_task_timeout_ms 任意、 整数 | タスクがタイムアウトするまでの1回の実行の制限時間(ミリ秒単位)。詳細については、 USER_TASK_TIMEOUT_MS をご参照ください。 | 
イメージリポジトリ・オブジェクト属性¶
| 属性 | 説明 | 
|---|---|
| name required, string | Snowflakeオブジェクト識別子。 | 
スキーマ・オブジェクト属性¶
| 属性 | 説明 | 
|---|---|
| name required, string | Snowflakeオブジェクト識別子。 | 
| コメント optional, string | スキーマを説明するコメント。 | 
| データ保持時間の日数 任意、 整数 | スキーマでTime Travelアクション(CLONE および UNDROP)を実行できる日数を指定し、スキーマで作成されたすべてのテーブルのデフォルトのTime Travel保持時間数。 | 
| default_ddl_collation optional, string | データベースに追加されたすべてのスキーマとテーブルの照合仕様をデフォルトにします。このデフォルトは、スキーマおよび個々のテーブル・レベルでオーバーライドできます。 | 
| max_data_extension_time_in_days 任意、 整数 | Snowflakeがデータベース内のテーブルのデータ保持期間を延長して、テーブル上のストリームが古くなるのを防ぐことができる最大日数。 | 
| suspend_task_after_num_failures 任意、 整数 | 現在のタスクが自動的に中断される連続した失敗タスク数。 | 
| user_task_managed_initial_warehouse_size 任意、 整数 | Snowflakeが理想的なサイズを決定するためにタスク履歴を使用できるようになる前に、タスクの最初の実行にプロビジョニングするコンピューティングリソースのサイズを指定します。 | 
| user_task_timeout_ms 任意、 整数 | タスクがタイムアウトするまでの1回の実行の制限時間(ミリ秒単位)。詳細については、 USER_TASK_TIMEOUT_MS をご参照ください。 | 
サービスオブジェクトの属性¶
| 属性 | 説明 | 
|---|---|
| name required, string | Snowflakeオブジェクト識別子。 | 
| compute_pool required, string | サービスを実行するアカウントのコンピューティングプールの名前。 | 
| スペック 必須、 オブジェクト | サービス仕様詳細は サービス仕様表 をご参照ください。 | 
| external_access_integrations 任意、 文字列リスト | サービスが外部サイトにアクセスできるようにする、外部アクセス統合の名前。 | 
| auto_resume optional, boolean | サービス関数またはイングレスが呼び出された場合に、サービスを自動的に再開するかどうかを指定します。 | 
| min_instances 任意、 整数 | 実行するサービスインスタンスの最小数。 | 
| max_instances 任意、 整数 | 実行するサービスインスタンスの最大数。 | 
| query_warehouse optional, string | サービスコンテナがクエリを実行するためにSnowflakeに接続するけれども、使用するウェアハウスを明示的に指定しない場合に使用するウェアハウス。 | 
| コメント optional, string | サービスのコメント。 | 
サービス仕様の属性
| 属性 | 説明 | 
|---|---|
| spec_type required, string | サービス仕様のタイプ。可能な値は  | 
| spec_text required, string | ( サービス仕様ドル記号のペア($$)を使用して、仕様文字列の最初と最後を区切ることができます。 | 
| ステージ required, string | ( 仕様ファイルが保管されているSnowflake内部ステージです。例えば、  | 
| name required, string | ( ステージ上の サービス仕様ファイルへのパスです。例:  | 
テーブル・オブジェクトの属性¶
| 属性 | 説明 | 
|---|---|
| name required, string | Snowflakeオブジェクト識別子。この名前は、テーブルが作成されるスキーマに対して一意である必要があります。 | 
| 種類 optional, string | テーブルタイプ設定可能な値には、パーマネント・テーブル、 TEMPORARY 、 TRANSIENT の場合は TABLE があります。 | 
| コメント optional, string | テーブルの説明。 | 
| cluster_by[] 任意、 文字列リスト | テーブル内の1つ以上の列または列式をクラスタリングキーとして指定します。 | 
| enable_schema_evolution。 optional, boolean | テーブルのスキーマ進化を有効にするか無効にするか。 | 
| change_tracking optional, boolean | テーブルの変更追跡を有効にするか無効にするか。 | 
| データ保持時間の日数 任意、 整数 | テーブルの履歴データに対してTime Travelアクション(SELECT 、 CLONE 、 UNDROP)を実行できるように、テーブルの保持期間を指定します。 | 
| max_data_extension_time_in_days 任意、 整数 | テーブル上のストリームが古くなるのを防ぐために、Snowflakeがデータ保持期間を延長できる最大日数。 | 
| default_ddl_collation optional, string | 将来テーブルに追加される列を含む、テーブルの列の照合順序仕様をデフォルトにします。 | 
| 列 必須、 列リスト | 列の定義のリスト。列定義属性 をご参照ください。 | 
| 制約事項 任意、 制約リスト | 制約の定義のリスト。制約定義属性 をご参照ください。 | 
列定義属性
| 属性 | 説明 | 
|---|---|
| name required, string | 列名。 | 
| データ型 required, string | 列に含まれるデータのタイプ。 | 
| nullable optional, boolean | 列が NULL 値を許可するかどうか。 | 
| collate optional, string | 文字列比較などの列操作に使用する照合順序を指定します。 | 
| デフォルト optional, string | INSERT または CREATE TABLE AS SELECT ステートメントで明示的に値が指定されていない場合に、自動的に列にデフォルト値を挿入するかどうか。 | 
| autoincrement optional, boolean | 連続する列の数字を自動的にインクリメントして含めるかどうか。 | 
| autoincrement_start 任意、 整数 | 列のスターリング値。 | 
| autoincrement_increment 任意、 整数 | 次の自動インクリメント数を決定するためのインクリメント。 | 
| コメント optional, string | 列の説明。 | 
Constraint definition attributes
| 属性 | 説明 | 
|---|---|
| name required, string | 制約名。 | 
| column_names 必須、 文字列リスト | 制約を適用する列名。 | 
| constraint_type required, string | 制約のタイプ。可能な値は次を含みます: UNIQUE 、 PRIMARY KEY 、および FOREIGN KEY・。 | 
| referenced_column_names required, string | ( 外部キーが参照するテーブル名 | 
| query_warehouse optional, string | ( 外部キーが参照する列名 | 
タスク属性¶
| 属性 | 説明 | 
|---|---|
| name required, string | Snowflakeオブジェクト識別子。 | 
| 定義 required, string | SQL タスクの定義単一の SQL ステートメント、ストアドプロシージャの呼び出し、またはSnowflakeスクリプトを使用した手続き型ロジックです。 | 
| ウェアハウス optional, string | タスク実行用のコンピューティングリソースを提供する仮想ウェアハウスを指定します。 | 
| スケジュール optional, string | タスクを定期的に実行するスケジュールを指定します。詳細は タスクスケジュール属性 をご参照ください。 | 
| コメント optional, string | タスクを説明するコメント。 | 
| 前任者 任意、 文字列リスト | 現在のタスクに対する1つ以上の先行タスクを指定します。 | 
| user_task_managed_initial_warehouse_size optional, string | タスクの最初の実行のためにプロビジョニングする計算リソースのサイズ。 | 
| user_task_timeout_ms optional, string | タスクがタイムアウトするまでの1回の実行の制限時間(ミリ秒単位)。詳細については、 USER_TASK_TIMEOUT_MS をご参照ください。 | 
| suspend_task_after_num_failures 任意、 整数 | 現在のタスクが自動的に中断される連続した失敗タスク数。 | 
| コンディション optional, string | ブール値 SQL 式を指定します。AND/OR で結合された複数の条件がサポートされています。 | 
| allow_overlapping_execution optional, boolean | DAG の複数のインスタンスを同時に実行できるようにするかどうかを指定します。 | 
タスクスケジュールの属性
| 属性 | 説明 | 
|---|---|
| schedule_type optional, string | スケジュールのタイプ。可能な値は  | 
| cron_expr optional, string | ( 
 | 
| タイムゾーン optional, string | ( スケジュールのタイムゾーンは、例えば  | 
| 分 optional, string | ( 各タスクの実行間隔の分数。 | 
ウェアハウス属性¶
| 属性 | 説明 | 
|---|---|
| name required, string | Snowflakeオブジェクト識別子。 | 
| コメント optional, string | ウェアハウスの説明 | 
| warehouse_type optional, string | ウェアハウスのタイプ。可能な値は、 STANDARD 、 SNOWPARK-OPTIMIZED を含みます。 | 
| warehouse_size optional, string | ウェアハウスのサイズ。可能な値は次を含みます。XSMALL、 SMALL、 MEDIUM、 LARGE、 XLARGE、 XXLARGE、 XXXLARGE、 X4LARGE、 X5LARGE、 X6LARGE。 | 
| auto_suspend optional, string | ウェアハウスが自動的に一時停止するまでの時間(秒)。 | 
| auto_resume optional, string | SQL ステートメント(クエリなど)の送信時にウェアハウスを自動的に再開するかどうかを指定します。取り得る値は「true」と「false」を含みます。 | 
| max_concurrency_level 任意、 整数 | ウェアハウスクラスターで実行される SQL ステートメントの同時実行レベル。 | 
| statement_queued_timeout_in_seconds 任意、 整数 | SQL ステートメントがシステムによりキャンセルされる前に、ウェアハウスのキューに入れることができる時間(秒単位)。 | 
| statement_timeout_in_seconds 任意、 整数 | 実行中の SQL ステートメントがシステムによってキャンセルされるまでの時間(秒単位)。 | 
| resource_monitor optional, string | ウェアハウスに明示的に割り当てられているリソースモニターの名前。リソースモニターがウェアハウスに明示的に割り当てられている場合、モニターはウェアハウスが使用する月間クレジットを制御します。 | 
例¶
- option-attributesパラメーターを使ってデータベース・オブジェクトを作成します。- snow object create database name=my_db comment='Created with Snowflake CLI' 
- option-attributesパラメーターを使ってテーブル・オブジェクトを作成します。- snow object create table name=my_table columns='[{"name":"col1","datatype":"number", "nullable":false}]' constraints='[{"name":"prim_key", "column_names":["col1"], "constraint_type":"PRIMARY KEY"}]' --database my_db --schema public 
- --json object-definitionオプションを使ってデータベースを作成します。- snow object create database --json '{"name":"my_db", "comment":"Created with Snowflake CLI"}' 
- --json object-definitionオプションを使ってテーブルを作成します。- snow object create table --json "$(cat table.json)" --database my_db - table.jsonが次を含む場所。- { "name": "my_table", "columns": [ { "name": "col1", "datatype": "number", "nullable": false } ], "constraints": [ { "name": "prim_key", "column_names": ["col1"], "constraint_type": "PRIMARY KEY" } ] }