Source: https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/ Documentation version: v5.3.2 # 数据定义概述 数据定义明确了数据库中的数据结构。本文介绍 GQL 支持的用于管理数据结构的数据定义语句(Data Definition Language,简称 DDL)。 在定义数据结构之前,您需要了解以下概念: ## Catalog Catalog 在服务组初始化的时由系统创建,是一个持久化的 Schema 的集合。您可以在 Catalog 中创建多个 Schema。 ## Schema Schema 是数据的逻辑容器。当服务组初始化时,系统会自动创建位于逻辑路径`/default_schema`的 Schema,作为存储资源对象的默认 Schema。 您也可以[创建自定义 Schema](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/schema/create/) 并[将其设置为当前会话的 Schema](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/sessions/set/)。 Schema 创建之后,可以向其中添加以下资源对象: - 图类型:描述图中可能出现的图元素(点和边)的类型。 - 点类型:描述点可能具有的标签和属性。 - 边类型:描述边可能具有的标签和属性,以及由边连接的两种点的类型。 - 图:图类型的实例,以点和边的形式存储实际数据。 - 过程:可在查询中调用的内置或用户自定义的过程。 ## 图类型 图类型是图的类型,包含一组点类型和边类型。每个图类型都有一个唯一的名称。 ### 点类型 每个点类型包含: - 一个点类型名称。 - 一组标签,每个标签都有一个在点类型内唯一的名称。 - 一组属性,每个属性包含: - 一个在点类型内唯一的名称。 - 一个[值类型](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/data-types/)。 每个点类型必须声明一个主键,该主键可以由一个或多个属性组成。 ### 边类型 每个边类型包含: - 一个边类型名称。 - 一组标签,每个标签都有一个在边类型内唯一的名称。 - 一组属性,每个属性包含: - 一个在边类型内唯一的名称。 - 一个[值类型](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/data-types/)。 - 两个由边连接的点类型。 - 该边类型是有向还是无向的声明。 每个边类型可以声明一个多边键,该键可以由零个或多个属性组成。 关于图类型的更多信息,请参见 [CREATE GRAPH TYPE](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/graph-type/create/)。 ## 数据定义语句 GQL 支持以下数据定义语句: - SCHEMA - [CREATE SCHEMA](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/schema/create/) - [DROP SCHEMA](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/schema/drop/) - 图类型 - [CREATE GRAPH TYPE](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/graph-type/create/) - [DROP GRAPH TYPE](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/graph-type/drop/) - [ALTER GRAPH TYPE](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/graph-type/alter-graph-type/) - [RENAME GRAPH TYPE](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/graph-type/rename/) - 图 - [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 GRAPH](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/graph/drop/) - [RENAME GRAPH](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/graph/rename/) - [索引](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/index/) - [CREATE NORMAL INDEX](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/index/create/) - [CREATE VECTOR INDEX](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/index/create-vector/) - [CREATE SPATIAL INDEX](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/index/create-geo/) - [CREATE FULLTEXT INDEX](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/index/create-fulltext/) - [DROP INDEX](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/index/drop/) - TTL (存活时间) - [CREATE TTL](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/ttl/create/) - [DROP TTL](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/ttl/drop/) - [ALTER TTL](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/ttl/alter/) - [过程](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/procedures/) - [CREATE PROCEDURE](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/procedures/create/) - [DROP PROCEDURE](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/procedures/drop/) - [ALTER PROCEDURE](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/procedures/alter/)