×
OrientDB教程OrientDB简介OrientDB安装OrientDB基本概念OrientDB数据类型OrientDB控制台模式

OrientDB数据库命令

OrientDB创建数据库OrientDB修改数据库OrientDB备份数据库OrientDB恢复数据库OrientDB连接数据库OrientDB断开数据库连接OrientDB数据库信息OrientDB列出数据库OrientDB冻结数据库OrientDB释放数据库OrientDB配置数据库OrientDB导出数据库OrientDB导入数据库OrientDB提交数据库OrientDB回滚数据库OrientDB优化数据库OrientDB删除数据库

OrientDB记录命令

OrientDB插入记录OrientDB查询记录OrientDB加载记录OrientDB重新加载记录OrientDB导出记录OrientDB更新记录OrientDB截断记录OrientDB删除记录

OrientDB类命令

OrientDB创建类OrientDB修改类OrientDB截断类OrientDB删除类

OrientDB集群命令

OrientDB创建集群OrientDB修改集群OrientDB截断集群OrientDB删除集群

OrientDB属性命令

OrientDB创建属性OrientDB修改属性OrientDB删除属性

OrientDB顶点命令

OrientDB创建顶点OrientDB移动顶点OrientDB删除顶点

OrientDB边缘命令

OrientDB创建边OrientDB修改边OrientDB删除边

OrientDB高级概念

OrientDB函数OrientDB序列OrientDB索引OrientDB事务OrientDB钩子(触发器)OrientDB缓存OrientDB日志OrientDB性能调整OrientDB升级OrientDB安全OrientDB Studio Web界面

OrientDB接口

OrientDB Java连接操作OrientDB Python连接操作

OrientDB事务


和RDBMS一样,OrientDB支持事务ACID属性。 事务包括在数据库管理系统内执行的工作单元。 在数据库环境中维护事务有两个主要原因。

  • 即使系统发生故障,也可以从故障中同时进行恢复并保持数据库的一致性。
  • 在同时访问数据库的程序之间提供隔离。

默认情况下,数据库事务必须遵循ACID属性,例如Atomic,Consistent,Isolated和Durable属性。 但OrientDB是一个符合ACID的数据库,这意味着它不会抵触或否定ACID的概念,但它在处理NoSQL数据库时会改变它的看法。 看看ACID属性如何与NoSQL数据库一起使用。

  • 原子性 - 当你做一些事情来改变数据库时,改变应该作为一个整体来工作或失败。
  • 一致性 - 数据库应该保持一致。
  • 隔离性 - 如果其他事务执行同时执行,则用户将无法在并发执行中查看记录。
  • 持久性 - 如果系统崩溃(硬件或软件),数据库本身应该能够进行备份。

数据库事务可以通过使用CommitRollback 命令来实现。

提交

提交意味着通过保存对数据库的所有更改来关闭事务。 回滚意味着将数据库状态恢复到您打开事务的位置。以下语句是COMMIT数据库命令的基本语法。

COMMIT

注 - 只有在连接到特定数据库并开始事务后,才能使用此命令。

示例

在本例中,将使用本教程前面章节中创建的名为demo的相同数据库。将看到提交事务的操作并使用事务来存储记录。

需要使用以下BEGIN命令首先启动事务。

orientdb {db = demo}> BEGIN

使用以下命令将记录值为id = 12name = Maxsu插入到Employee表中。

orientdb> INSERT INTO employee (id, name) VALUES (12, 'Maxsu')

可以使用以下命令来提交事务。

orientdb> commit

如果此事务成功提交,将获得以下输出。

Transaction 2 has been committed in 4ms

回滚

回滚意味着将数据库状态恢复到您打开事务的位置。

以下语句是ROLLBACK数据库命令的基本语法。

ROLLBACK

注 - 只有在连接到特定数据库并开始事务后,才能使用此命令。

示例

在这个例子中,将使用本教程前面章节中创建的名为demo的相同数据库。 将看到回滚事务的操作并使用事务来存储记录。

先使用以下BEGIN命令启动事务。

orientdb {db = demo}> BEGIN

使用以下命令将记录值为id = 12name = Maxsu插入到employee表中。

orientdb> INSERT INTO employee (id, name) VALUES (12, 'Maxsu')

可以使用以下命令来检索employee表中的记录。

orientdb> SELECT FROM employee WHERE name LIKE '%su'

如果此命令成功执行,您将获得以下输出。

---+-------+-------------------- 
 # | ID   | name 
---+-------+-------------------- 
 0 | 12   | Maxsu
---+-------+-------------------- 
1 item(s) found. Query executed in 0.076 sec(s).

可以使用以下命令来回滚此事务。

orientdb> ROLLBACK

再次使用select查询语句从Employee表中检索相同的记录。

orientdb> SELECT FROM employee WHERE name LIKE '%su'

如果此命令成功执行,您将获得以下输出。

0 item(s) found. Query executed in 0.037 sec(s).

可以看到,上面插入的数据已被回滚了,所以没有查询到相关记录信息。


分类导航

关注微信下载离线手册

bootwiki移动版 bootwiki
(群号:472910771)