OrientDB - 更新记录
UPDATE更新记录命令用于修改特定记录的值。SET 是更新特定字段值的基本命令。
以下语句是更新命令的基本语法。
UPDATE <class>|cluster:<cluster>|<recordID> [SET|INCREMENT|ADD|REMOVE|PUT <field-name> = <field-value>[,]*] |[CONTENT| MERGE <JSON>] [UPSERT] [RETURN <returning> [<returning-expression>]] [WHERE <conditions>] [LOCK default|record] [LIMIT <max-records>] [TIMEOUT <timeout>]
以下是有关上述语法中选项的详细信息。
SET − 定义要更新的字段。
INCREMENT − 将指定字段值增加给定值。
ADD − 在集合字段中添加新项目。
REMOVE − 从集合字段中删除一个项目。
PUT − 将条目放入映射字段。
CONTENT − 用 JSON 文档内容替换记录内容。
MERGE − 将记录内容与 JSON 文档合并。
LOCK − 指定如何在加载和更新之间锁定记录。我们有两个选项来指定Default和Record。
UPSERT − 如果记录存在则更新记录,如果不存在则插入新记录。它有助于执行单个查询而不是执行两个查询。
RETURN − 指定要返回的表达式而不是记录数。
LIMIT − 定义要更新的最大记录数。
TIMEOUT − 定义在超时之前允许更新运行的时间。
示例
让我们考虑上一章中使用的相同客户表。
Sr.No. | Name | Age |
---|---|---|
1 | Satish | 25 |
2 | Krishna | 26 |
3 | Kiran | 29 |
4 | Javeed | 21 |
5 | Raja | 29 |
尝试以下查询来更新客户"Raja"的年龄。
Orientdb {db = demo}> UPDATE Customer SET age = 28 WHERE name = 'Raja'
如果上述查询成功执行,您将获得以下输出。
Updated 1 record(s) in 0.008000 sec(s).
要检查 Customer 表的记录,您可以使用以下查询。
orientdb {db = demo}> SELECT FROM Customer
如果上述查询成功执行,您将获得以下输出。
----+-----+--------+----+-------+---- # |@RID |@CLASS |id |name |age ----+-----+--------+----+-------+---- 0 |#11:0|Customer|1 |satish |25 1 |#11:1|Customer|2 |krishna|26 2 |#11:2|Customer|3 |kiran |29 3 |#11:3|Customer|4 |javeed |21 4 |#11:4|Customer|5 |raja |28 ----+-----+--------+----+-------+----