我刚开始Redis。我需要为在线商店或其他任何东西创建一个数据库。显示功能的主要想法。我从未在Redis和终端工作过,所以有点混乱。首先,我想创建一个具有id用户计数器的用户数据库:
SET user:id 1000
INCR user:id
(integer) 1001
我可以在命令中使用somehow命令,如:
HMSET incr user:id username "Lacresha Renner" gender "female" email "renner@gmail.com"
(error) ERR wrong number of arguments for HMSET
如果我的数据库自动计算数据库中的新用户。或者在Redis中不可能?我应该用手做,比如用户:1,用户:2,用户:n? 我在终端(MacOS)工作。
答案 0 :(得分:3)
HMSET
接收密钥名称,以及元素名称和值对。
您的第一个参数(incr
)无效,第二个参数的id
部分应为显式ID。
例如:
HMSET user:1000 username "Lacresha Renner" gender "female" email "renner@gmail.com"
关于你的第一个SET
,你应该有一个密钥,它的整个目的是一个正在运行的uid,你应该使用INCR
的回复作为新用户HASH密钥名称的新UID(1000在上面的例子中。)
如果您从不删除用户,则运行UID的值将是系统中的用户数。如果确实删除了用户,则还应将UID插入SET中,并在删除用户后删除UID。在这种情况下,SCARD
应该会为您提供系统中的用户数量,SMEMBERS
(或SSCAN
)会为您提供所有UID。