2015-11-04 54 views
-1

RENAMERENAMENX之間有什麼區別?Redis中的RENAME和RENAMENX?

顯然,我通過Redis commands頁面查看,但無法正確理解其差異。
如果有人可以通過一個例子來解釋它,那將會很棒。

+2

我有點懷疑你的閱讀是以任何方式徹底:) https://monosnap.com/file/raG8Doj8T53zi2lwEBIDXiJjBtj5Kx.png。 'RENAME'會覆蓋newkey。 'RENAMENX'不會。就這樣。 –

回答

1

RENAMENX(如果新的鍵不存在,重命名),將引發新的關鍵的情況下錯誤(重命名爲)存在。

Case1: 
    - Key renamed to new key. 

Case2 (Existing new key): 
    - Error, new key exists. 

RENAME命令的文檔顯示,將重命名的關鍵新的密鑰(重命名爲),即使它存在,迫使一個DEL

Case1: 
    - Key renamed to new key. 

Case2 (Existing new key): 
    - New Key exists. 
    - Delete New Key and its value. 
    - Key renamed.