键值存储服务 KVS-更新单个kv:请求参数

时间:2024-05-07 09:20:02

请求参数

表2 请求Body参数

参数

是否必选

参数类型

描述

table_name

String

表名,仓内唯一。

  • 长度:[3, 63]
  • 取值字符限制:[a-z0-9_-]+

primary_key

Document

用户自定义的主键名及值。

说明:

内容字段:主键字段名和值,组合索引多个元素。

condition_expression

condition_expression object

条件表达式,参见conditional小节,禁止携带主键字段。

kv_options

kv_options object

选项字段。

  • true:返回操作执行前的内容。
  • false:返回操作执行后的内容。

update_fields

update_fields object

对kv_doc有效。

projection_fields

Array of strings

对kv_doc有效,返回哪些字段列表,默认全部。

说明:

字段名或嵌套字段路径用'/'分割 ,e_name为下标。

update_blob

update_blob object

对kv_blob有效,修改局部数据。

projection_blob

projection_blob object

对kv_blob有效,返回局部数据。

表3 condition_expression

参数

是否必选

参数类型

描述

single_field_expression

single_field_expression object

单字段条件。

multi_field_expression

multi_field_expression object

多字段条件,多个相同优先级的单字段条件。

single_kv_expression

single_kv_expression object

文档表达式。

composed_expression

composed_expression object

组合条件, 逐层同级的子表达式嵌套。

表4 composed_expression

参数

是否必选

参数类型

描述

logic

String

逻辑关系,取值如"$and", "$or", "$nor"。

expressions

Array of expression objects

多个相同优先级且相同逻辑的单字段或多字段条件。

表5 expression

参数

是否必选

参数类型

描述

single_kv_expression

single_kv_expression object

单KV条件。

single_field_expression

single_field_expression object

单字段条件。

multi_field_expression

multi_field_expression object

多字段条件。

表6 single_kv_expression

参数

是否必选

参数类型

描述

func

String

取值:"is_doc", "is_blob", "is_exist", "not_exist"。

表7 single_field_expression

参数

是否必选

参数类型

描述

field

String

条件字段。

func

String

条件函数,取值如"$gt", $lt","$gte", $lte" "$eq", "$ne", "$prefix", "$in","$nin", "$exists"。

value

Document

value和value_array二选一。

  • value条件值,适用于除"$in", "$nin"外的func。
  • 字段名无意义,可以传空,也可以传字段名。
  • $exists值为true/false。
说明:

$prefix操作只适用于string和binary类型。

value_array

Array of strings

"value"和"value_array"二选一。

  • "value_array" 条件值列表, 值用于"$in", "$nin"。
表8 multi_field_expression

参数

是否必选

参数类型

描述

logic

String

多字段条件,多个相同优先级的单字段条件。

expressions

Array of single_field_expression objects

多个相同逻辑操作的单字段条件。

表9 kv_options

参数

是否必选

参数类型

描述

return_hint

Boolean

  • true:返回操作执行前的内容,默认true。
  • false:返回操作执行后的内容。
表10 update_fields

参数

是否必选

参数类型

描述

set

Document

新增字段或覆盖某字段的值1个或多个字段。

说明:

禁止修改sortkey的字段。

add

Document

对某个字段做加法运算,并更新为运算后的值1个或多个字段。

rmv

Array of strings

删除1个或多个字段。

  • 数组元素为待删除字段名。
表11 update_blob

参数

是否必选

参数类型

描述

xattr

String

属性信息。

offset

Integer

value部分的偏移位置。

说明:
  • 超过value当前size无效
  • "offset"与"len"与"blob_data" 要么都带,要么都不带。

len

Integer

更新内容长度。

blob_data

String

二进制内容。

表12 projection_blob

参数

是否必选

参数类型

描述

with_attr

Boolean

是否返回kv_blob的属性信息, 默认返回。

offset

Integer

value部分的偏移位置,超过实际size不返回,默认0。

len

Integer

数据长度,默认offset后全部数据。

support.huaweicloud.com/api-kvs/UpdateKv.html