You need to enable JavaScript to run this app.
导航
update_data
最近更新时间:2024.12.23 14:00:12首次发布时间:2024.12.23 14:00:12

概述

/collection/update_data 接口用于为已存在数据的部分字段进行更新。支持 text、标量字段、vector 字段的更新。

请求接口

说明

请求向量数据库 VikingDB 的 OpenAPI 接口时,需要构造签名进行鉴权,详细的 OpenAPI 签名调用方法请参见 API签名调用指南

URI

/api/collection/update_data

统一资源标识符

请求方法

POST

客户端对向量数据库服务器请求的操作类型

请求头

Content-Type: application/json

请求消息类型

Authorization: HMAC-SHA256 ***

鉴权

请求参数

参数名

类型

必选

备注

collection_name/collection_alias

string

collection名

fields

array

单次写入的数据数目不超过100(考虑性能问题)
每条数据作为一个map,key为字段名,value为字段值,不同字段类型的字段值格式如下:

  • int64:格式是整型数值。
  • float:格式是浮点数值。
  • string:格式是字符串。
  • bool:格式是 true/false。
  • list:格式是字符串数组。
  • list:格式是整型数组。
  • vector:格式是向量(浮点数数组)。
  • sparse_vector:格式是 json 字典,k 为 string 类型,表示关键词的字面量,v 为 float 类型,表示该关键词的权重数值。
  • text:格式是 string。

ttl

int64

更新数据的ttl

响应消息

参数

参数说明

code

状态码

message

返回信息

状态码说明

code

message

备注

http status_code

0

success

成功

200

1000005

collection not exist

Collection不存在

400

1000003

invalid request:%s

非法参数

  • 缺失必选参数
  • 字段值与字段类型不匹配

400

1000001

unauthorized

缺乏鉴权信息

401

1000002

no permission

权限不足

403

1000011

data not found

数据不存在

400

完整示例

请求消息

curl -i -X POST \
  -H 'Content-Type: application/json' \
  -H 'Authorization: HMAC-SHA256 ***' \
  https://api-vikingdb.volces.com/api/collection/update_data \
  -d '{
    "collection_name": "test_collection",
    "fields": [
        {
            "id": 1,
            "author": "Updated Author Name",
        },
    ],
}'

响应消息

执行成功返回:

HTTP/1.1 200 OK
Content-Length: 43
Content-Type: application/json
 
{"code":0,"message":"success"}

执行失败返回:

HTTP/1.1 400 OK
Content-Length: 43
Content-Type: application/json
 
{"code":1000011,"message":"primary key 2 data not exist","request_id":"02173469631705400000000000000000000ffff0a006429651395"}