Orientdb 简明教程

OrientDB - Sequences

Sequences 是在自动递增机制中使用的概念,它在 OrientDB v2.2 中引入。在数据库术语中,序列是一种管理计数器字段的结构。简单来说,序列通常在需要始终递增的数字时使用。它支持两种类型−

ORDERED −每次指针调用返回新值的 .next 方法。

CACHED −序列将在每个节点上缓存“N”个项目。若要调用每个项目,我们使用 .next() ,在缓存包含多个项目时首选它。

Create Sequence

序列通常用于自动增加人员的 ID 值。与 OrientDB 的其他 SQL 概念一样,它还执行与 RDBMS 中的序列类似的操作。

以下语句是创建序列的基本语法。

CREATE SEQUENCE <sequence> TYPE <CACHED|ORDERED> [START <start>]
[INCREMENT <increment>] [CACHE <cache>]

以下是上文中选项的详细信息。

<Sequence> −序列的本地名称。

TYPE −定义序列类型为有序或缓存。

START −定义初始值。

INCREMENT −为每个 .next 方法调用定义增量。

CACHE −定义预缓存的值的数量(如果使用了缓存序列类型)。

让我们创建一个以数字 1201 开头的名为“seqid”的序列。尝试以下查询使用序列实现此示例。

CREATE SEQUENCE seqid START 1201

如果成功执行了以上查询,您会获得以下输出。

Sequence created successfully

尝试以下查询使用序列“seqid”插入帐户表的 ID 值。

INSERT INTO Account SET id = sequence('seqid').next()

如果成功执行了以上查询,您会获得以下输出。

Insert 1 record(s) in 0.001000 sec(s)

Alter Sequence

Alter sequence 是一条用于更改序列属性的命令。它将修改除序列类型以外的所有序列选项。

以下语句是更改序列的基本语法。

ALTER SEQUENCE <sequence> [START <start-point>]
[INCREMENT <increment>] [CACHE <cache>]

以下是上文中选项的详细信息。

<Sequence> −定义要更改的序列。

START −定义初始值。

INCREMENT −为每个 .next 方法调用定义增量。

CACHE −定义在使用缓存序列类型时要预缓存的值的数量。

尝试以下查询更改名为 seqid 的序列的启动值从“1201 到 1000”。

ALTER SEQUENCE seqid START 1000

如果成功执行了以上查询,您会获得以下输出。

Altered sequence successfully

Drop Sequence

Drop sequence 是一条用于删除序列的命令。

以下语句是删除序列的基本语法。

DROP SEQUENCE <sequence>

其中 <Sequence> 为要删除的序列。

尝试以下查询删除名为“seqid”的序列。

DROP SEQUENCE seqid

如果成功执行了以上查询,您会获得以下输出。

Sequence dropped successfully