OrientDB更新記錄
更新記錄命令用於修改特定記錄的值。 SET
是更新特定字段值的基本命令。
以下語句是Update
命令的基本語法。
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
- 指定如何鎖定加載和更新之間的記錄。有兩個選項來指定默認和記錄。 -
UPSERT
- 如果存在記錄,則更新記錄;如果不存在,則插入新記錄。 它有助於在執行兩個查詢的地方執行單個查詢。 -
RETURN
- 指定要返回的表達式而不是記錄數。 -
LIMIT
- 定義要更新的最大記錄數。 -
TIMEOUT
- 定義在超時之前允許更新運行的時間。
示例
讓我們考慮一下在前一章中使用的Customer
表。
編號
名字
年齡
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
----+-----+--------+----+-------+----