OrientDB教程

OrientDB 事务

与 RDBMS 一样,OrientDB 支持事务 ACID 属性。 事务 包括在数据库管理系统内执行的一个工作单元。在数据库环境中维护事务有两个主要原因。
允许从故障中并发恢复并保持数据库一致,即使在系统出现故障的情况下。 在并发访问数据库的程序之间提供隔离。
默认情况下,数据库事务必须遵循 ACID 属性,例如 Atomic、Consistent、Isolated 和 Durable 属性。但 OrientDB 是一个 ACID 兼容的数据库,这意味着它并不矛盾或否定 ACID 的概念,但它在处理 NoSQL 数据库时改变了它的看法。看看 ACID 属性如何与 NoSQL 数据库一起工作。
Atomic-当你做一些改变数据库的事情时,改变应该是整体有效或失败。
一致-数据库应保持一致。
隔离-如果其他事务正在同时执行,那么用户将无法看到并发执行中的记录。
持久-如果系统崩溃(硬件或软件),数据库本身应该能够进行备份。
使用 Commit 和 Rollback 命令可以实现数据库事务。

提交

提交意味着通过将所有更改保存到数据库来关闭事务。回滚意味着将数据库状态恢复到您打开事务时的状态。
以下语句是 COMMIT 数据库命令的基本语法。
COMMIT
注意-只有在连接到特定数据库并开始事务后才能使用此命令。

示例

在此示例中,我们将使用我们在本教程前一章中创建的名为"demo"的相同数据库。我们将看到提交事务的操作,并使用事务存储一条记录。
您需要先使用以下 BEGIN 命令启动事务。
orientdb {db = demo}> BEGIN
使用以下命令将记录插入到员工表中,其值为 id = 12 和 name = satish.P。
orientdb> INSERT INTO employee (id, name) VALUES (12, 'satish.P')
您可以使用以下命令提交事务。
orientdb> commit
如果此事务成功提交,您将获得以下输出。
Transaction 2 has been committed in 4ms

回滚

回滚意味着将数据库状态恢复到您打开事务的点。
以下语句是 ROLLBACK 数据库命令的基本语法。
ROLLBACK
注意-只有在连接到特定数据库并开始事务后才能使用此命令。

示例

在此示例中,我们将使用我们在本教程前一章中创建的名为"demo"的相同数据库。我们将看到回滚事务的操作,并使用事务存储一条记录。
您必须首先使用以下 BEGIN 命令启动事务。
orientdb {db = demo}> BEGIN
使用以下命令将记录插入到员工表中,其值为 id = 12 和 name = satish.P。
orientdb> INSERT INTO employee (id, name) VALUES (12, 'satish.P')
您可以使用以下命令检索表employee的记录。
orientdb> SELECT FROM employee WHERE name LIKE '%.P'
如果这条命令执行成功,你会得到如下输出。
---+-------+--------------------
 # | ID | name 
---+-------+--------------------
 0 | 12   | satish.P 
---+-------+--------------------
1 item(s) found. Query executed in 0.076 sec(s). 
您可以使用以下命令回滚此事务。
orientdb> ROLLBACK
再次检查选择查询以从 Employee 表中检索相同的记录。
orientdb> SELECT FROM employee WHERE name LIKE '%.P' 
如果 Rollback 执行成功,您将在输出中找到 0 条记录。
0 item(s) found. Query executed in 0.037 sec(s). 
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4