Declarative Native App command reference

以下命令包括支持创建和发布应用程序包的新参数:

CREATE APPLICATION PACKAGE

The CREATE APPLICATION PACKAGE command supports a new optional parameter, TYPE = DATA, which specifies that the app will be a Declarative Native App.

语法

CREATE APPLICATION PACKAGE [ IF NOT EXISTS ] <name> TYPE = DATA
Copy

新的可选参数:

TYPE = [ DATA | NATIVE ]

指定要创建的应用程序包类型:

  • DATA: indicates that the application package will contain a Declarative Native App.

  • NATIVE:表示应用程序包将包含 Snowflake Native App。这是默认值。

指定应用程序包类型后,不能稍后使用 ALTER APPLICATION PACKAGE 更改类型。

指定 TYPE = DATA 时,此命令中的其他参数(例如 DATA_RETENTION_TIME_IN_DAYS 和 COMMENT)不受支持。

此参数需要具有 CREATE APPLICATION PACKAGE 和 CREATE DATABASE 权限角色

应用程序包的创建者会自动获得该应用程序包的 OWNERSHIP 权限。

ALTER APPLICATION PACKAGE

The ALTER APPLICATION PACKAGE command supports the following new optional parameters to support creating and publishing Declarative Native Apps. These new parameters are not supported for Snowflake Native Apps.

语法

ALTER APPLICATION PACKAGE <name>
[ ADD LIVE VERSION
| ADD VERSION FROM @STAGE/path
| BUILD
| COMMIT
| RELEASE [LIVE VERSION]
| ABORT LIVE VERSION ]
[COMMENT = 'string_literal']
Copy

新的可选参数

ADD LIVE VERSION

创建可编辑的应用程序包的实时版本。此实时版本用于添加或更新文件,例如清单文件和笔记本文件。

ADD VERSION FROM @<STAGE>/<path>

根据 :doc:`暂存区 </user-guide/data-load-local-file-system-stage>`中的文件,创建应用程序包的实时版本。如果您有一组文件要包含在应用程序包中,并且要一次添加所有文件,此方法非常有用。

备注

如果在创建实时版本后对文件进行迭代,则需要对暂存区上的文件进行相同的更改,以保持未来版本的一致性。

BUILD

构建应用程序,但不提交。使用此命令验证清单文件并继续处理应用程序包。

COMMIT

构建应用程序,提交以供发布,但不立即发布。

提交过程通过添加内部版本号来准备应用程序包以供发布,并将应用程序包设为不可变。

RELEASE

立即将应用程序的提交版本发布到 Snowflake Marketplace。

RELEASE LIVE VERSION

构建应用程序,提交以供发布,并立即将其发布到 Snowflake Marketplace。

相当于按顺序运行 BUILD、COMMIT 和 RELEASE 命令。

ABORT LIVE VERSION

移除应用程序包的 LIVE 版本。将应用程序包恢复到上次提交的版本。

现有参数

These parameters are supported for both Declarative Native Apps and Snowflake Native Apps.

<name>

指定应用程序包的标识符。

如果标识符包含空格、特殊字符或大小写混合字符,则整个字符串必须放在双引号内。放在双引号内的标识符也区分大小写。

COMMENT = 'string_literal'

可选:为应用程序版本添加注释或覆盖现有注释。此注释显示在 SHOW APPLICATION PACKAGES 中。

访问控制要求

此命令需要具有应用程序包 OWNERSHIP 权限的角色。

示例

  • 创建新的应用程序包:

    CREATE APPLICATION PACKAGE market_data_app TYPE = DATA;
    
    Copy
  • 创建可编辑的应用程序包的实时版本:

    ALTER APPLICATION PACKAGE market_data_app
      ADD LIVE VERSION
      COMMENT = 'Market views for Northern region';
    
    Copy
  • 从现有的暂存应用程序包创建应用程序包的新版本:

    ALTER APPLICATION PACKAGE market_data_app
      ADD VERSION FROM @my_stage/market_data_app_v1;
    
    Copy
  • 构建应用程序包,但不提交:

    ALTER APPLICATION PACKAGE market_data_app BUILD;
    
    Copy
  • 构建并提交应用程序包以供发布,但不立即发布:

    ALTER APPLICATION PACKAGE market_data_app
      COMMIT
      COMMENT = 'Market views for North and East regions';
    
    Copy
  • 立即将应用程序包发布到 Snowflake Marketplace:

    ALTER APPLICATION PACKAGE market_data_app RELEASE;
    
    Copy
  • 构建、提交应用程序包的实时版本,并立即将其发布到 Snowflake Marketplace:

    ALTER APPLICATION PACKAGE market_data_app RELEASE LIVE VERSION
      COMMENT = 'Market views for North, East, and West regions';
    
    Copy
  • 添加应用程序端的实时版本并对其进行编辑后,停止编辑并恢复到上次提交的版本:

    ALTER APPLICATION PACKAGE market_data_app ABORT LIVE VERSION
    
    Copy

GRANT IMPORTED PRIVILEGES ON APPLICATION

GRANT IMPORTED PRIVILEGES 命令支持新的可选参数 ON APPLICATION <name>

This command allows consumers to grant access to all of the data and views in a Declarative Native App to other members of their organization.

This command can be used on any Declarative Native App, and does not require app roles to be defined for the application package.

访问控制要求

此命令需要具有已安装应用程序 OWNER 权限的角色。

语法

GRANT IMPORTED PRIVILEGES ON APPLICATION <name> TO ROLE <role_name>;
Copy

示例

GRANT IMPORTED PRIVILEGES ON APPLICATION market_data_app TO ROLE marketing_team_east;
Copy
语言: 中文