Memcached replace 命令用于替換已存在的 key(鍵) 的 value(數(shù)據(jù)值)。
如果 key 不存在,則替換失敗,并且您將獲得響應 NOT_STORED。
語法:
replace 命令的基本語法格式如下:
replace key flags exptime bytes [noreply] value
參數(shù)說明如下:
key:鍵值 key-value 結構中的 key,用于查找緩存值。
flags:可以包括鍵值對的整型參數(shù),客戶機使用它存儲關于鍵值對的額外信息 。
exptime:在緩存中保存鍵值對的時間長度(以秒為單位,0 表示永遠)
bytes:在緩存中存儲的字節(jié)數(shù)
noreply(可選): 該參數(shù)告知服務器不需要返回數(shù)據(jù)
value:存儲的值(始終位于第二行)(可直接理解為key-value結構中的value)
實例
以下實例中我們設置:
key → mykey
flag → 0
exptime → 900 (以秒為單位)
bytes → 10 (數(shù)據(jù)存儲的字節(jié)數(shù))
value → data_value
以下實例中我們使用的鍵位 'mykey' 并存儲對應的值 data_value。執(zhí)行后我們替換相同的 key 的值為 'some_other_value'。
add mykey 0 900 10 data_value STORED get mykey VALUE mykey 0 10 data_value END replace mykey 0 900 16 some_other_value get mykey VALUE mykey 0 16 some_other_value END
輸出
如果數(shù)據(jù)添加成功,則輸出:
STORED
輸出信息說明:
STORED:保存成功后輸出。
NOT_STORED:執(zhí)行替換失敗后輸出。