CREATE LISTING

创建要直接与特定使用者共享的免费 列表

另请参阅:

ALTER LISTINGDESCRIBE LISTINGSHOW LISTINGSDROP LISTING列表清单引用

语法

CREATE EXTERNAL LISTING [ IF NOT EXISTS ] <name>
  [ { SHARE <share_name>  |  APPLICATION PACKAGE <package_name> } ]
  AS '<yaml_manifest_string>'
  [ PUBLISH ={ TRUE | FALSE } ]
  [ REVIEW = { TRUE | FALSE } ]
  [ COMMENT = '<string>' ]
Copy

参数

name

指定列表的标识符(即名称)。它必须符合以下条件:

  • 无论账户位于哪个 Snowflake 区域,在组织中都必须是唯一的。

  • 必须以字母字符开头,不能包含空格或 下划线 (_) 之外的特殊字符。

AS 'yaml_manifest_string'

指定列表的 YAML 格式清单。有关列表清单文件的详细信息和示例,请参阅 列表清单引用

清单通常以带美元引号的字符串形式提供。有关更多信息,请参阅 以美元为引号的字符串常量

SHARE share_name

指定要附加到列表的共享的标识符。

APPLICATION PACKAGE package_name

指定附加到列表的应用程序包。

另请参阅 SHOW APPLICATION PACKAGES

PUBLISH = { TRUE | FALSE }

指定应如何发布列表。

如果为 TRUE,列表会立即发布到 Marketplace Ops 以供审核。

默认:TRUE。

REVIEW =  { TRUE | FALSE }

指定列表是否应提交到 Marketplace Ops 进行审核。

默认:TRUE。

COMMENT = 'string_literal'

指定列表的注释。

默认:无值

PUBLISH 和 REVIEW 属性的不同值组合会导致以下行为:

PUBLISH

REVIEW

行为

TRUE

TRUE

请求审核,在获得批准后立即发布。

TRUE

FALSE

导致错误。您不能未经审核便在 Snowflake Marketplace 上发布列表。

FALSE

TRUE

请求审核,但审核后不会自动发布。

FALSE

FALSE

不请求审核或发布,将列表另存为草稿。

访问控制要求

用于执行此 SQL 命令的 角色 必须至少具有以下一项 权限

权限

对象

备注

CREATE DATA EXCHANGE LISTING

账户

Only the ACCOUNTADMIN role has this privilege by default. The privilege can be granted to additional roles as needed.

用于配置 Cross-Cloud Auto-Fulfillment 的委派权限。

如果 ALTER 命令正为自动履行而修改清单内容

请参阅 允许账户设置 Cross-Cloud Auto-Fulfillment

请注意,对架构中的对象进行操作还需要对父数据库和架构具有 USAGE 权限。

用于执行此 SQL 命令的 角色 必须至少具有以下一项 权限

有关创建具有指定权限集的自定义角色的说明,请参阅 创建自定义角色

有关对 安全对象 执行 SQL 操作的相应角色和权限授予的一般信息,请参阅 访问控制概述

使用说明

  • 使用 CREATE LISTING ... 创建的列表会自动发布。有关取消发布和发布操作的信息,请参阅 ALTER LISTING

示例

创建名称为“MYLISTING”并带有指定清单的列表,然后提交以供审核和后续发布。

有关与使用 SQL 管理列表相关联的其他示例和用例,请参阅 使用 SQL 管理列表 – 示例

备注

此示例使用 PUBLISH 和 REVIEW 的默认值。

CREATE EXTERNAL LISTING MYLISTING
SHARE MySHARE AS
$$
title: "MyListing"
subtitle: "Subtitle for MyListing"
description: "Description for MyListing"
listing_terms:
   type: "STANDARD"
targets:
    accounts: ["Org1.Account1"]
usage_examples:
    - title: "this is a test sql"
      description: "Simple example"
      query: "select *"
$$
;
Copy

创建名称为“MYLISTING”并将指定的清单作为草稿的列表。

CREATE EXTERNAL LISTING MYLISTING
SHARE MySHARE AS
$$
title: "MyListing"
subtitle: "Subtitle for MyListing"
description: "Description for MyListing"
listing_terms:
  type: "OFFLINE"
targets:
   regions: ["PUBLIC.AWS_US_EAST_1", "PUBLIC.AZURE_WESTUS2"]
usage_examples:
   - title: "this is a test sql"
     description: "Simple example"
     query: "select *"
$$ PUBLISH=FALSE REVIEW=FALSE;
Copy
语言: 中文