Source: https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/graph/drop/ Documentation version: v5.3.2 # DROP GRAPH `DROP GRAPH`语句用于销毁图或临时图。支持销毁位于当前会话中的 Schema 或指定 Schema 的图。 Note 临时图存在于内存缓存中,当其宿主服务退出时,临时图会被自动销毁。 ## 使用说明 当执行`DROP GRAPH`语句销毁图时,图数据不会立即从 Storage 服务中被物理删除,即不会立即释放磁盘空间。而是在后续的 [RocksDB Compaction(数据压缩)](https://github.com/facebook/rocksdb/wiki/Compaction)操作中被永久删除。 您可以提交 COMPACT 任务来强制删除物理数据。图数据是否立即被删除,取决于数据在 RocksDB 的 LSM-tree 层次结构中所在的层级。 Note 对非默认 Schema 或其中的对象执行操作时,用户既要通过隐式访问规则或显式`USAGE`授权获得该 Schema 的访问权,也要具备目标操作所需的权限。Schema 访问校验和目标操作所需的权限校验相互独立,满足其中一项不能替代另一项。Schema 访问控制不适用于临时图、内置 Procedure 和内置 Function。更多信息,请参见 [Schema 访问控制](https://dev-docs.yueshu.com.cn/v5.3.2/server-admin/authorization/schema-access-control/)。 ## 前提条件 - 已创建图或临时图。更多信息,请参见 [CREATE GRAPH](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/graph/create/) 和 [CREATE TEMPORARY GRAPH](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/graph-projection/create/)。 - 若要销毁图,必须是图的所有者,或具备在图上执行`DROP`操作的权限,或具备在当前 Schema 执行`DROP ANY GRAPH`操作的权限。更多信息,请参见[角色与权限](https://dev-docs.yueshu.com.cn/v5.3.2/server-admin/authorization/)。 - 若要销毁临时图,必须是具备角色`ADMIN`的用户或临时图的所有者。 ## 语法 语法图源码 drop_graph_statement ```` drop_graph_statement ::= 'DROP' 'PROPERTY'? 'GRAPH' ('IF EXISTS')? ((schema_reference '/')? graph_name | temp_graph_name) ```` ## 参数 ### `IF EXISTS` 该子句会检查待销毁的图或临时图是否存在。如果不存在,则不会销毁图或临时图,也不会抛出异常。 若不指定该子句,且待销毁的图或临时图不存在,则会抛出异常。 ### `schema_reference` 所引用的 Schema 路径。此处即待销毁的图所在的 Schema 路径。 绝对路径或相对路径均可在语句中使用。若想销毁不在当前会话中的 Schema 中的图,则需指定对应 Schema 路径。关于设置和查看 Schema 的更多信息,请参见 [SESSION SET](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/sessions/set/) 和 [SHOW CURRENT_SCHEMA](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/data-admin/show/show-current-schema/)。 ### `graph_name` 待销毁的图的名称。 ### `temp_graph_name` 待销毁的临时图的名称。必须以井号(`#`)开头。 ## 示例 ### 销毁当前 Schema 中的图 ```` DROP GRAPH /default_schema/my_graph ```` 上述示例销毁了[示例数据集](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/overview/example-dataset/)中介绍的图`movie`。 ### 销毁指定 Schema 中的图 ```` DROP GRAPH /default_schema/my_graph ```` 上述示例销毁了在 [CREATE GRAPH](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/graph/create/#schema_1) 示例部分所创建的`my_graph`。 ### 销毁临时图 ```` DROP GRAPH IF EXISTS #movie_temporary_graph ```` 上述示例销毁了在 [CREATE TEMPORARY GRAPH](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/graph-projection/create/#schema) 中创建的临时图`#movie_temporary_graph`。