setBatch 更新多条记录
setBatch 根据主键列表更新多条记录。
Luwak >= 3.0.0, asm.so >= 0.1.4
API
公共参数 metas 对象
名称 | 类型 | 描述 |
---|---|---|
token | string | 访问令牌,当需要授权才能访问时为必填 |
signature | string | 签名 |
appKey | string | 当需要签名时为必填 |
timestamp | string, number | 时间戳,当校验时间误差范围时为必填 |
请求参数
名称 | 类型 | 描述 |
---|---|---|
method | string | API 名称 |
params | array | API 参数 |
method 命名规范是 $entity.setBatch
params 参数是一个数组,包含多个主键值,并将数据对象追加到数组的末尾。
响应结果
返回受影响的行数
示例
场景描述
将语言表中 es 和 pt 的 disabled 字段设置为 1。
请求
{
"jsonrpc": "2.0",
"method": "smartPanda.mdh.language.setBatch",
"params": [
"es",
"pt",
{
"disabled": 1
}
],
"metas": {
"token": "44ea16b7-3aa1-41a5-81da-8ee9d2b840c2",
"signature": "516146c09fa0355204647b82b14c5468",
"appKey": "NSEA4ETIpBlyB2l9",
"timestamp": 1740641653090
},
"id": "7ea303ab-b580-482d-b2a1-afc4a046bb37"
}
响应
{
"jsonrpc": "2.0",
"result": 2,
"id": "7ea303ab-b580-482d-b2a1-afc4a046bb37"
}
实体定义
smart_panda 库中 language 表的定义如下
CREATE TABLE `language`
(
`code` varchar(8),
`name` varchar(100),
`alias` varchar(100),
`disabled` tinyint(1) NOT NULL DEFAULT '0',
PRIMARY KEY (`code`)
);
entity 名称是 smartPanda.mdh.language
实际执行的 SQL
Prepare UPDATE smart_panda.language SET disabled = ? WHERE code IN (?, ?)
Execute UPDATE smart_panda.language SET disabled = 1 WHERE code IN ('es', 'pt')