키값 이동 (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