SHOW CREATE GRAPH¶
SHOW CREATE GRAPH命令返回创建指定图或临时图时所使用的 CREATE GRAPH 语句或 CREATE TEMPORARY GRAPH 语句。
Note
对非默认 Schema 或其中的对象执行操作时,用户既要通过隐式访问规则或显式USAGE授权获得该 Schema 的访问权,也要具备目标操作所需的权限。Schema 访问校验和目标操作所需的权限校验相互独立,满足其中一项不能替代另一项。Schema 访问控制不适用于临时图、内置 Procedure 和内置 Function。更多信息,请参见 Schema 访问控制。
语法¶
- show_create_graph_command
show_create_graph_command ::=
'SHOW' 'CREATE' 'GRAPH' ((schema_reference '/')? graph_name | temp_graph_name)
参数¶
schema_reference¶
所引用的 Schema 路径。此处即待返回创建语句的图所在的 Schema 路径。
绝对路径或相对路径均可在命令中使用。若待返回创建语句的图不在当前会话的 Schema 中,则需指定对应 Schema 路径。关于设置和查看 Schema 的更多信息,请参见 SESSION SET 和 SHOW CURRENT_SCHEMA。
graph_name¶
待返回创建语句的图的名字。
temp_graph_name¶
待返回创建语句的临时图的名字,必须以井号(#)开头。
示例¶
以下示例基于示例数据集。
查询当前会话的 Schema 下的图的创建语句¶
SHOW CREATE GRAPH movie
返回:
+------------+-------------------------------------------------------+
| graph_name | create_graph_statement |
+------------+-------------------------------------------------------+
| movie | CREATE GRAPH IF NOT EXISTS `movie` TYPED `movie_type` |
+------------+-------------------------------------------------------+
上述示例返回了当前 Schema 中创建图movie所使用的CREATE GRAPH语句。
查询指定 Schema 下图的创建语句¶
SHOW CREATE GRAPH /default_schema/my_graph
返回:
+------------+-------------------------------------------------------------+
| graph_name | create_graph_statement |
+------------+-------------------------------------------------------------+
| my_graph | CREATE GRAPH IF NOT EXISTS `my_graph` TYPED `my_graph_type` |
+------------+-------------------------------------------------------------+
上述示例在当前会话的 Schema 为/my_schema的情况下,返回了在 CREATE GRAPH 中介绍的图my_graph的创建语句。
查询临时图的创建语句¶
SHOW CREATE GRAPH #my_temporary_graph
+---------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| graph_name | create_graph_statement |
+---------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| #my_temporary_graph | CREATE TEMPORARY GRAPH IF NOT EXISTS `#my_temporary_graph` TYPED {\n NODE TYPE `Actor` (LABEL `Person`{`id` INT64 NOT NULL, `name` STRING DEFAULT NULL, `birthDate` DATE DEFAULT NULL, PRIMARY KEY (`id`)}),\n NODE TYPE `Director` (LABEL `Person`{`id` INT64 NOT NULL, `name` STRING DEFAULT NULL, `birthDate` DATE DEFAULT NULL, PRIMARY KEY (`id`)}),\n NODE TYPE `User` (LABEL `Person`{`id` INT64 NOT NULL, PRIMARY KEY (`id`)}),\n NODE TYPE `Movie` (LABEL `Movie`{`id` INT64 NOT NULL, `name` STRING DEFAULT NULL, PRIMARY KEY (`id`)}),\n NODE TYPE `Genre` (LABEL `Genre`{`id` INT64 NOT NULL, `name` STRING DEFAULT NULL, PRIMARY KEY (`id`)}),\n EDGE TYPE `Act` (`Actor`)-[LABEL `Act`{}]->(`Movie`),\n EDGE TYPE `Direct` (`Director`)-[LABEL `Direct`{}]->(`Movie`),\n EDGE TYPE `Watch` (`User`)-[LABEL `Watch`{`rate` FLOAT DEFAULT NULL}]->(`Movie`),\n EDGE TYPE `WithGenre` (`Movie`)-[LABEL `WithGenre`{}]->(`Genre`)\n} OPTIONS {immutable: false} |
+---------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
上述示例返回了在 CREATE TEMPORARY GRAPH 中介绍的临时图#my_temporary_graph的创建语句。