OrientDB – 序列
OrientDB – 序列
序列是自动增量机制中使用的一个概念,它是在 OrientDB v2.2 中引入的。在数据库术语中,序列是一种管理计数器字段的结构。简单地说,当您需要一个总是递增的数字时,通常会使用序列。它支持两种类型 –
ORDERED – 每次指针调用返回新值的 .next 方法时。
CACHED – 该序列将在每个节点上缓存“N”个项目。要调用每个项目,我们使用.next(),当缓存包含多个项目时,这是首选。
创建序列
序列通常用于自动增加一个人的 id 值。与 OrientDB 的其他 SQL 概念一样,它也执行与 RDBMS 中的 Sequence 类似的操作。
以下语句是创建序列的基本语法。
CREATE SEQUENCE <sequence> TYPE <CACHED|ORDERED> [START <start>] [INCREMENT <increment>] [CACHE <cache>]
以下是有关上述语法中选项的详细信息。
<Sequence> –序列的本地名称。
TYPE – 定义序列类型 ORDERED 或 CACHED。
START – 定义初始值。
INCREMENT – 定义每个 .next 方法调用的增量。
CACHE – 如果您曾经缓存序列类型,则定义要预缓存的值的数量。
让我们创建一个名为“seqid”的序列,它以数字 1201 开头。尝试以下查询以使用序列实现此示例。
CREATE SEQUENCE seqid START 1201
如果上述查询执行成功,您将获得以下输出。
Sequence created successfully
尝试以下查询以使用序列 ‘seqid’ 插入 Account 表的 id 值。
INSERT INTO Account SET id = sequence('seqid').next()
如果上述查询执行成功,您将获得以下输出。
Insert 1 record(s) in 0.001000 sec(s)
改变顺序
更改序列是用于更改序列属性的命令。它将修改除序列类型之外的所有序列选项。
以下语句是更改序列的基本语法。
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 <sequence>
其中<Sequence>定义要删除的序列。
尝试以下查询以删除名为“seqid”的序列。
DROP SEQUENCE seqid
如果上述查询执行成功,您将获得以下输出。
Sequence dropped successfully