Dans mon application, j'utilise la base de données redis. J'ai parcouru leur documentation, mais je n'ai pas trouvé la différence entre HSET et HMSET.
HMSET est comme HSET, mais il permet de définir simultanément plusieurs paires champ/valeur.
À partir d'octobre 2017, HSET dans la version redis actuelle (4.0.2 sur ma machine) peut également définir plusieurs paires clé-valeur.
127.0.0.1:6379> HSET foo a 1 b 2
(integer) 2
127.0.0.1:6379> HGETALL foo
1) "a"
2) "1"
3) "b"
4) "2"
Ces commandes sont donc désormais identiques.
Définit le champ du hachage stocké à la clé sur valeur. Si la clé n'existe pas, une nouvelle clé contenant un hachage est créée. Si le champ existe déjà dans le hachage, il est remplacé.
valeur de champ de clé HMSET [valeur de champ ...]
Définit les champs spécifiés à leurs valeurs respectives dans le hachage stocké à la clé. Cette commande écrase tous les champs existants du hachage. Si la clé n'existe pas, une nouvelle clé contenant un hachage est créée.
Pour plus d'informations sur les commandes redis, cliquez ici .
La seule différence entre les commandes HSET
et HMSET
est la valeur de retour des commandes.
Valeur de retour HSET (réponse entière):
#
si le champ est un nouveau champ dans le hachage et que la valeur a été définie. (où #
est le nombre de nouveaux champs créés)HMSET renvoie une chaîne simple comme réponse.