CREATE SHARE

创建一个新的 共享。创建共享后,您可以使用 GRANT <privilege> ...TO SHARE 命令将数据库和数据库中的对象(架构、表和视图)包含在共享中。然后,您可以使用 ALTER SHARE,将一个或多个账户添加到共享。

另请参阅:

DROP SHAREALTER SHARESHOW SHARESDESCRIBE SHARE

语法

CREATE [ OR REPLACE ] SHARE [ IF NOT EXISTS ] <name>
  [ COMMENT = '<string_literal>' ]
Copy

必填参数

name

指定共享的标识符;对于创建共享的账户来说必须唯一。

此外,标识符必须以字母字符开头,且不能包含空格或特殊字符,除非整个标识符字符串放在双引号内(例如,"My object")。放在双引号内的标识符也区分大小写。

有关更多详细信息,请参阅 标识符要求

可选参数

COMMENT = 'string_literal'

为共享指定注释。

默认:无值

访问控制要求

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

权限

对象

备注

CREATE SHARE

账户

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

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

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

有关 Snowflake Secure Data Sharing 的具体访问控制要求的更多信息,请参阅 启用非 ACCOUNTADMIN 角色执行数据共享任务

使用说明

  • 关于元数据:

    注意

    客户应确保在使用 Snowflake 服务时,不会将个人数据(用户对象除外)、敏感数据、出口管制数据或其他受监管数据作为元数据输入。有关更多信息,请参阅 Snowflake 中的元数据字段

  • CREATE OR REPLACE <object> 语句是原子的。也就是说,当对象被替换时,旧对象将被删除,新对象将在单个事务中创建。

示例

创建名为 sales_s 的空共享:

CREATE SHARE sales_s;
Copy
+-----------------------------------------+
| status                                  |
|-----------------------------------------|
| Share SALES_S successfully created.     |
+-----------------------------------------+

创建共享后,通过运行以下命令来完成该共享:

  1. 运行 GRANT <privilege> ...TO SHARE 命令,以将数据库(和数据库中的对象)添加到共享。

  2. 运行 ALTER SHARE 命令,以将账户添加到共享。

语言: 中文