SET

SET

Podemos definir um valor do tipo string à uma chave utilizando o comando set.

SET mykey 'my value'
>>> OK

Para conferir se o valor foi armazenado corretamente podemos utilizar o comando get.

GET mykey

>>> "my value"

No exemplo acima a chave mykey foi criada com o valor my value

Se a chave já existir, o comando set pode ser utilizado para alterar o valor da chave.

SET mykey 'my changed value'
>>> OK
GET mykey
>>> "my changed value"

SET NX

O parâmetro NX somente vai definir uma chave se ela ainda não existir no Redis.

Ainda utilizando os exemplos acima vou tentar alterar o valor da chave mykey que atualmente é my changed key para new value utilizando o parâmetro NX.

SET mykey 'new value' NX
>>> (nil)

Como a chave mykey já existia, o valor da chave não foi alterado.

GET mykey
>>> "my changed value"

SET XX

O comando set com o parâmetro XX somente define o valor de uma chave caso essa chave já exista.

SET mykey 'new value' XX
>>> OK
GET mykey
>>> "new value"

SET EX

O parâmetro EX vai definir em quanto tempo em segundos a chave irá expirar dentro do Redis.

SET expkey 'my value' EX 10
>>> OK

O comando acima define a chave expkey com o valor my value e define que a chave só deve durar 10 segundos.

Se você tentar recuperar o valor da chave após 10 segundos será retornado nil.

GET expkey
>>> "my value"

DEL

Quando for necessário remover uma chave, pode ser utilizado o comando DEL

SET mykey 'new value'
>>> OK
GET mykey
>>> "my value"
DEL mykey
>>> (integer) 1

SET EXAT

O comando acima define a chave expkey com o valor my value utilizando o parâmetro EXAT e define que a chave só deve durar até o tempo determinado no formato epoch time do Unix em segundos.

SET expkey 'my value' EXAT 1765219320
>>> OK

SET PXAT

O comando acima define a chave expkey com o valor my value utilizando o parâmetro PXAT e define que a chave só deve durar até o tempo determinado no formato epoch time do Unix em milissegundos.

SET expkey 'my value' PXAT 1765219320000
>>> OK

SET KEEPTTL

O comando acima define a chave expkey com o valor my new value mas respeitando o TTL que foi definido com o comando set utilizando o parâmetro EXP Exemplo:

SET expkey 'my old value' EX 60
>>> OK
SET expkey 'my new value' KEEPTTL
>>> OK

O valor será my new value mas respeitando o TTL de 60 segundos que será mantido.