getByUK 获取一条记录
getByUK 根据唯一键获取一条记录。
Luwak >= 3.0.0, asm.so >= 0.1.4
API
公共参数 metas 对象
名称 | 类型 | 描述 |
---|---|---|
token | string | 访问令牌,当需要授权才能访问时为必填 |
signature | string | 签名 |
appKey | string | 当需要签名时为必填 |
timestamp | string, number | 时间戳,当校验时间误差范围时为必填 |
请求参数
名称 | 类型 | 描述 |
---|---|---|
method | string | API 名称 |
params | object | API 参数 |
method 命名规范是 $entity.getByUK
params 参数是一个对象,字段名映射表中唯一键的列名。
响应结果
如果找到则返回数据对象。
如果没找到则返回一个 {}
对象。
示例
场景描述
获取品牌国际化表中唯一键 brand_id 等于 1,language_code 等于 zh-CN 的一条数据。
请求
{
"jsonrpc": "2.0",
"method": "smartPanda.mdh.brandLocalization.getByUK",
"params": {
"brandId": 1,
"languageCode": "zh-CN"
},
"metas": {
"token": "44ea16b7-3aa1-41a5-81da-8ee9d2b840c2",
"signature": "4a6ea53220ab0fa277a38d77a889ff0d",
"appKey": "NSEA4ETIpBlyB2l9",
"timestamp": 1740556945643
},
"id": "ce360be1-fb3a-4ad3-ba2c-49c6a89c822c"
}
响应
{
"jsonrpc": "2.0",
"result": {
"brandId": 1,
"id": 200,
"languageCode": "zh-CN",
"name": "麝香猫"
},
"id": "ce360be1-fb3a-4ad3-ba2c-49c6a89c822c"
}
实体定义
smart_panda 库中 brand_localization 表的定义 如下
CREATE TABLE `brand_localization`
(
`id` int NOT NULL AUTO_INCREMENT,
`brand_id` int,
`language_code` varchar(8),
`name` varchar(255),
PRIMARY KEY (`id`),
UNIQUE KEY `uk_brand_id_language_code` (`brand_id`, `language_code`)
);
entity 名称是 smartPanda.mdh.brandLocalization
实际执行的 SQL
Prepare SELECT * FROM smart_panda.brand_localization WHERE brand_id = ? AND language_code = ?
Execute SELECT * FROM smart_panda.brand_localization WHERE brand_id = 1 AND language_code = 'zh-CN'