📅  最后修改于: 2023-12-03 15:33:20.761000             🧑  作者: Mango
在OrientDB中,更新记录非常简单,只需要使用SQL语句中的UPDATE命令即可。
UPDATE <class>|cluster:<cluster>|<rid>
[SET|INCREMENT|ADD|REMOVE|PUT|REMOVEALL] <field-name> = <expression>[, <field-name> = <expression>]*
[WHERE <conditions>]
[LOCK default|record]
<class>
:要更新记录的类名。cluster:<cluster>
:要更新记录所在的集群。<rid>
:要更新记录的RID。<field-name>
:要更新的字段名称。<expression>
:更新的值。可以是一个常量、一个表达式(可使用其他字段),或一个子查询。<conditions>
:更新条件。使用标准SQL语法可以嵌套多个条件,并且可以使用AND和OR运算符。假设有以下类定义:
CREATE CLASS Person
CREATE PROPERTY Person.name STRING
CREATE PROPERTY Person.age INTEGER
然后插入以下记录:
INSERT INTO Person SET name='John', age=30
现在我们想要更新John的年龄为31岁:
UPDATE Person SET age=31 WHERE name='John'
我们也可以一次更新多个字段:
UPDATE Person SET age=31, name='John Smith' WHERE name='John'
如果我们不知道要更新的记录的RID,可以使用查询来检索需要更新的记录:
UPDATE Person SET age=35 WHERE name='John' AND age=31
上面的查询找到了名字为John的人,年龄为31岁,将他们年龄更新为35岁。
如果在更新期间需要锁定记录,则可以使用LOCK语句:
UPDATE Person LOCK default SET age=31 WHERE name='John'
注意,锁定仅在分布式设置中有用。
如此简单的SQL命令就可以使用OrientDB更新记录。无论是一次更新一个字段,还是一次更新多个字段,SQL的UPDATE命令都可以轻松完成任务。