0

C の redis にデータを挿入したいのですが、hiredisライブラリを見つけました。

私は例を書きました:

redisContext *c = redisConnect("127.0.0.1", 6379);
if (c != NULL && c->err)
{
    printf("Error: %s\n", c->errstr);
    // handle error
} else
{
    printf("Connected to Redis\n");
}

redisReply *reply;
reply = (redisReply *)redisCommand(c, "AUTH 123456");


if(reply->type==5)
{ 
    reply = (redisReply *)redisCommand(c,"SET %d %d",32,111);
    freeReplyObject(reply);

    reply = (redisReply *)redisCommand(c,"GET %d",32);
    printf("%s\n",reply->str);

    int ii = redisAppendCommand(c,"SADD %d %d",32,33);// MY PROBLEM IS HERE 
    printf("-------SADD---------------- %d\n",ii);

SADD コマンドの使い方がわかりません。私を助けてください。

4

1 に答える 1

0

正解は

redisReply *rreply;
char buffer[4096];
sprintf(buffer,"%u,%u,%u,%u,%s,%u,%d", 1,2,3,4,"HI",5,6);
redisAppendCommand(c,"SADD  %s %s","slog1",buffer);
redisGetReply(c,(void**)rreply);

重要なのは、最初にこの redisAppendCommand コマンドを使用する必要があることです。2 番目のキーは redisAppendCommand コマンドです。このコマンドの後にのみバッファに挿入します。この redisGetReply コマンドを使用して永続化する必要があります。

于 2016-07-19T06:00:09.463 に答える