跳到主要内容

getByUK 获取一条记录

getByUK 根据唯一键获取一条记录。

Luwak >= 3.0.0, asm.so >= 0.1.4

API

公共参数 metas 对象

名称类型描述
tokenstring访问令牌,当需要授权才能访问时为必填
signaturestring签名
appKeystring当需要签名时为必填
timestampstring, number时间戳,当校验时间误差范围时为必填

请求参数

名称类型描述
methodstringAPI 名称
paramsobjectAPI 参数

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'