Redis Msetnx 命令

Redis 字符串(string)

Redis Msetnx 命令用于所有給定 key 都不存在時(shí),同時(shí)設(shè)置一個(gè)或多個(gè) key-value 對(duì)。

語(yǔ)法

redis Msetnx 命令基本語(yǔ)法如下:

redis 127.0.0.1:6379> MSETNX key1 value1 key2 value2 .. keyN valueN 

可用版本

>= 1.0.1

返回值

當(dāng)所有 key 都成功設(shè)置,返回 1 。 如果所有給定 key 都設(shè)置失敗(至少有一個(gè) key 已經(jīng)存在),那么返回 0 。

實(shí)例

# 對(duì)不存在的 key 進(jìn)行 MSETNX

redis> MSETNX rmdbs "MySQL" nosql "MongoDB" key-value-store "redis"
(integer) 1

redis> MGET rmdbs nosql key-value-store
1) "MySQL"
2) "MongoDB"
3) "redis"


# MSET 的給定 key 當(dāng)中有已存在的 key

redis> MSETNX rmdbs "Sqlite" language "python"  # rmdbs 鍵已經(jīng)存在,操作失敗
(integer) 0

redis> EXISTS language                          # 因?yàn)?MSET 是原子性操作,language 沒(méi)有被設(shè)置
(integer) 0

redis> GET rmdbs                                # rmdbs 也沒(méi)有被修改
"MySQL"

Redis 字符串(string)