# 云函数修改数据
# 简要描述
- 云函数修改数据库数据;若多条匹配,会全部修改
- 参数结构与 修改数据 完全一致:
column(要改的字段)+where(条件对象,等值 AND) - 务必带有效
where:where缺失或为空对象时,UPDATE 无 WHERE,会改整表
# 方法名称
potato.updateOne(tableName, param)
1
# 参数说明
| 参数 | 必选 | 类型 | 说明 |
|---|---|---|---|
| tableName | 是 | String | 表名称 |
| param | 是 | Object | 见下方结构 |
# param 结构(与数据库接口 body 一致)
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| column | 是 | Object | 要修改的字段对象,如 { "name": 111, "age": 13 } |
| where | 否 | Object | 修改条件对象,如 { "id": 1, "age": 1212 }(多字段为 AND) |
{
column: {
// 要更新的字段和值
},
where: {
// 等值条件(字段名: 值)
}
}
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
# 调用实例
# 按 id 修改
var param = {
column: {
name: 111,
age: 1212
},
where: {
id: 1
}
};
var res = potato.updateOne('test', param);
return res;
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
# 多条件修改
var param = {
column: {
age: 13
},
where: {
id: 1,
age: 1212
}
};
var res = potato.updateOne('test', param);
return res;
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
# 返回示例
更新成功方法侧通常返回 null(无异常即成功);经 /api/execFunction 包装后:
{
"code": "200",
"message": "",
"status": true,
"data": null,
"pc": null,
"time": null,
"nonce": null,
"sign": null,
"reqSign": null
}
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
# 客户端调用云函数
请求 POST /api/execFunction,验签见 接口规范。
# 请求头
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| Content-Type | 是 | string | JSON 时传 application/json |
| askKey | 是 | string | 验证 app 的令牌 |
| sign | 否 | string | 开启验签时必传 |
| time | 否 | string | 开启验签时必传(毫秒时间戳) |
| apiUserToken | 否 | string | 用户令牌 |
| nonce | 否 | string | 开启 V3 验签必传,6分钟内不可重复 |
| reqSign | 否 | string | 请求签名(若应用开启) |
# 请求体
| 参数 | 必选 | 类型 | 说明 |
|---|---|---|---|
| name | 是 | String | 云函数名称 |
| params | 否 | Object | 自定义参数 |
# 异常处理
try {
var param = {
column: { status: 1 },
where: { id: 1 }
};
potato.updateOne('users', param);
} catch (e) {
console.error('更新失败:', e.message);
}
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9