[TOC] **SET key value [EX seconds] [PX milliseconds] [NX|XX]** ##说明 将字符串值 value 关联到 key 。 如果 key 已经持有其他值, SET 就覆写旧值,无视类型。 对于某个原本带有生存时间(TTL)的键来说, 当 SET 命令成功在这个键上执行时, 这个键原有的 TTL 将被清除。 ##参数 key: 需要设置的key值 value: key对应的value值 可选参数 EX second :设置键的过期时间为 second 秒。 SET key value EX second 效果等同于 SETEX key second value 。 PX millisecond :设置键的过期时间为 millisecond 毫秒。 SET key value PX millisecond 效果等同于 PSETEX key millisecond value 。 NX :只在键不存在时,才对键进行设置操作。 SET key value NX 效果等同于 SETNX key value 。 XX :只在键已经存在时,才对键进行设置操作。 **注意:**使用 【可选参数】 时请选择[通用命令接口](https://www.showapi.com/apiGateway/view/?apiCode=1892&pointCode=1 "通用命令接口") ##返回值 在 Redis 2.6.12 版本以前, SET 命令总是返回 OK 。 从 Redis 2.6.12 版本开始, SET 在设置操作成功完成时,才返回 OK 。 如果设置了 NX 或者 XX ,但因为条件没达到而造成设置操作未执行,那么命令返回空批量回复(NULL Bulk Reply)。 ##图示 ![](https://oss.showapi.com/doc/3127/10/0c1936bdb9fe463eb4941a13f9b66da1.png)