CREATE NOTEBOOK PROJECT¶
创建笔记本项目对象。笔记本项目对象 (NPO) 将 Snowsight 工作区关联到数据库及架构。创建 NPO 时,工作区中的所有文件都会被复制到指定数据库和架构中的项目中。然后,可以使用 EXECUTE NOTEBOOK PROJECT 执行笔记本项目。您可以从暂存区或专用工作区创建笔记本项目对象。
备注
目前不支持从共享工作区创建笔记本项目对象。
语法¶
从专用工作区创建笔记本项目对象:
从暂存区创建笔记本项目对象:
必填参数¶
database_name.schema_name.project_name笔记本项目的完全限定标识符。
项目名称在架构中必须是唯一的。
标识符必须以字母字符开头,且不能包含空格或特殊字符,除非标识符字符串放在双引号内(例如
"My Project")。放在双引号内的标识符区分大小写。
FROM 'snow://workspace/{workspace_path' | '@database_name.schema_name.stage_name' }指定支持此笔记本项目的源。
使用
snow://workspace/...URL 从 Snowsight 中的工作区版本创建笔记本项目:使用暂存区引用(例如,
'@my_db.my_schema.my_stage'),从已部署到内部或临时暂存区的笔记本文件创建笔记本项目。
从工作区创建时,该值必须是指向工作区版本的
snow://workspace/...URL。该路径通常包括:
USER$ 或其他所有者。
架构。
工作区名称。
Version (for example,
versions/last).
例如:
snow://workspace/USER$.MY_SCHEMA."my_notebook_workspace"/versions/last
要找到工作区路径,请运行以下命令:
可选参数¶
COMMENT = 'string_literal'向笔记本项目对象添加注释或描述。
使用注释来描述目的或工作流程(例如
COMMENT = 'Notebook project for this workflow')。注释存储为对象元数据;避免在注释中包含敏感数据。
访问控制要求¶
要执行 CREATE NOTEBOOK PROJECT,角色必须具有足够的权限才能在目标数据库和架构中创建对象。所需权限包括:
对数据库的 USAGE 或 OWNERSHIP 权限。
对架构的 USAGE 或 OWNERSHIP。
对架构的 CREATE NOTEBOOK PROJECT 权限,允许在该架构中创建对象。
有关创建具有指定权限集的自定义角色的说明,请参阅 创建自定义角色。
使用说明¶
OR REPLACE 和 IF NOT EXISTS 子句互斥。它们不能同时用于同一条语句中。
CREATE OR REPLACE <object> 语句是原子的。也就是说,当对象被替换时,旧对象将被删除,新对象将在单个事务中创建。
A notebook project points to the specified workspace version indicated in the FROM clause. Using
versions/lastalways references the latest workspace version; using a fixed path references a static version.如果从暂存区创建笔记本项目,则可以通过从暂存区添加版本来更新笔记本项目。在工作区中运行和计划笔记本 是 Web 令牌 ()、 令牌或 编程访问令牌 。有关详细信息,请参阅 在工作区中运行和计划笔记本。
使用描述性项目名称来简化工作流程编排。
替换项目会更新存储的工作区路径和元数据。
要运行
CREATE NOTEBOOK PROJECT命令,您必须从工作区中的 SQL 文件或 SQL 工作表(而不是从笔记本单元格内)执行该命令。
示例¶
为工作区创建笔记本项目:
从暂存区创建笔记本项目:
使用 IF NOT EXISTS 从暂存区创建笔记本项目: