移动键值 (LCC.kvdb.dict.move_value)
声明
ok, old_value_or_err = LCC.kvdb.dict.move_value(src_name, src_key, dst_name?, dst_key?, timeout?)
参数
- src_name
字符串型,源词典名称(非空,最长256字节) - src_key
字符串型,源键名(必须为合法 UTF-8,且非空) - dst_name
字符串型,可选;目标词典名称,默认与源相同(非空,最长256字节) - dst_key
字符串型,可选;目标键名,默认与源键名相同(必须为合法 UTF-8,且非空) - timeout
数值型,可选;请求超时时间(秒),默认60
返回值
- ok
布尔型,移动成功返回true,失败返回false - old_value_or_err
字符串型或nil;成功时为目标位置原值(不存在则为nil),失败时通常为错误描述;源键不存在时第二返回值不保证为固定文案
说明
原子地将键从源词典迁移到目标词典。
如果源与目标相同且键名一致,函数会抛出错误。
成功但目标原先无值时返回true, nil。
找不到源键时返回false,第二返回值不保证为固定文案。
示例
local ok, old = LCC.kvdb.dict.move_value("待处理", "task#1", "进行中", "task#1")
if not ok then
error(old)
end