CREATE APPLICATION

Native Apps Frameworkを使用し、アプリケーションパッケージまたはリストに基づいて新しいアプリケーションを作成します。

こちらもご参照ください。

ALTER APPLICATIONDESCRIBE APPLICATIONDROP APPLICATIONSHOW APPLICATIONS

構文

CREATE APPLICATION <name> FROM APPLICATION PACKAGE <package_name>
   [ COMMENT = '<string_literal>' ]
   [ [ WITH ] TAG ( <tag_name> = '<tag_value>' [ , ... ] ) ]

CREATE APPLICATION <name> FROM APPLICATION PACKAGE <package_name>
  USING <path_to_version_directory>
  [ DEBUG_MODE = TRUE | FALSE ]
  [ COMMENT = '<string_literal>' ]
  [ [ WITH ] TAG ( <tag_name> = '<tag_value>' [, ...] ) ]


CREATE APPLICATION <name> FROM APPLICATION PACKAGE <package_name>
  USING VERSION  <version_identifier> [ PATCH <patch_num> ]
  [ DEBUG_MODE = TRUE | FALSE ]
  [ COMMENT = '<string_literal>' ]
  [ [ WITH ] TAG ( <tag_name> = '<tag_value>' [ , ... ] ) ]

CREATE APPLICATION <name> FROM LISTING <listing_name>
   [ COMMENT = '<string_literal>' ]
   [ [ WITH ] TAG ( <tag_name> = '<tag_value>' [ , ... ] ) ]
Copy

必須パラメーター

name

アプリケーションの識別子を指定します。アカウントに対して一意である必要があります。

また、識別子はアルファベット文字で始まる必要があり、識別子文字列全体が二重引用符で囲まれていない限り、スペースや特殊文字を含めることはできません(例: "My object")。二重引用符で囲まれた識別子も大文字と小文字が区別されます。

詳細については、 識別子の要件 をご参照ください。

FROM APPLICATION PACKAGE package_name

アプリケーションの作成に使用するアプリケーションパッケージの名前を指定します。ステージやバージョン/パッチを指定せずにアプリケーションパッケージからアプリケーションを作成するためにこの句を使用するには、アプリケーションパッケージにデフォルトのリリースディレクティブが定義されている必要があります。

この句は、アプリケーションパッケージと同じアカウントでアプリケーションを作成する場合にのみ使用できます。この句は、開発モードでアプリケーションを作成する場合には使用できません。

FROM LISTING listing_name

アプリケーションの作成に使用されたアプリケーションパッケージを含むリストの名前を指定します。

USING path_to_version_directory

アプリケーション用のアプリケーションファイルが含まれるステージへのパスを指定します。

USING version [ PATCH patch_num ]

アプリケーションの作成に使用したアプリケーションパッケージで定義されているバージョンと、オプションでパッチを指定します。

オプションのパラメーター

COMMENT = 'string_literal'

アプリケーションのコメントを指定します。

デフォルト: 値なし

DEBUG_MODE = { TRUE | FALSE }

インストールするアプリケーションのデバッグモードを有効または無効にします。

  • TRUE は、インストールされたアプリケーションのデバッグモードを有効にします。

  • FAlSE は、インストールされたアプリケーションのデバッグモードを無効にします。

注釈

DEBUG_MODE を設定できるのは、アプリケーションが以下の条件を満たしている場合のみです。

  • アプリケーションがアプリケーションパッケージと同じアカウントにある。

  • アプリケーションは特定のバージョンから、あるいは名前付きステージにあるファイルから作成される。

TAG ( tag_name = 'tag_value' [ , tag_name = 'tag_value' , ... ] )

タグ の名前とタグ文字列の値を指定します。

タグ値は常に文字列であり、タグ値の最大文字数は256です。

ステートメントにあるタグの指定の詳細については、 オブジェクトおよび列のタグクォータ をご参照ください。

アクセス制御の要件

この SQL コマンドの実行に使用される ロール には、少なくとも次の 権限 が必要です。

権限

オブジェクト

メモ

CREATE APPLICATION

アカウント

DEVELOP

アプリケーションパッケージ

INSTALL

アプリケーションパッケージ

IMPORT SHARE

CREATE APPLICATION

アカウント

これらの権限は、アプリケーションパッケージを含むアカウントとは異なるアカウントでアプリケーションオブジェクトを作成するために必要です。

使用上の注意

  • アプリケーションパッケージから直接アプリケーションを作成するには、アプリケーションパッケージでデフォルトのリリースディレクティブを指定する必要があります。

  • アプリケーションオブジェクトはデータベースと以下の点で異なります。

    • アプリケーションは一時的であってはならない。

    • タグに対する OWNERSHIP 権限を持つロールは、

      • データベースをドロップしたり、 COMMENT プロパティやアプリケーション固有のプロパティを変更したりすることができる。

      • アプリケーションロールに付与された権限を介する場合を除き、アプリケーションのコンテンツを表示したり変更したりすることはできない。また、このロールはスキーマやデータベースロールのようなデータベースレベルのオブジェクトを作成することはできない。

  • Regarding metadata:

    注意

    Customers should ensure that no personal data (other than for a User object), sensitive data, export-controlled data, or other regulated data is entered as metadata when using the Snowflake service. For more information, see Snowflakeのメタデータフィールド.

  • CREATE OR REPLACE <object> statements are atomic. That is, when an object is replaced, the old object is deleted and the new object is created in a single transaction.

CREATE APPLICATION hello_snowflake_app
  FROM APPLICATION PACKAGE hello_snowflake_package
  USING VERSION v1;
Copy
+---------------------------------------------------------+
| status                                                  |
|---------------------------------------------------------|
| Application 'hello_snowflake_app' created successfully. |
+---------------------------------------------------------+
CREATE APPLICATION hello_snowflake_app
  FROM APPLICATION PACKAGE hello_snowflake_package
  USING '@hello_snowflake_code.core.hello_snowflake_stage';
Copy
+---------------------------------------------------------+
| status                                                  |
|---------------------------------------------------------|
| Application 'hello_snowflake_app' created successfully. |
+---------------------------------------------------------+