【redis】核心函数API

来源:互联网 发布:金灿荣奚落公知视频 编辑:程序博客网 时间:2024/06/06 03:47

核心API说明:

1) 

redisContext *redisConnect(const char *ip,int port);

功能:连接redis数据库

参数

ip:ip地址

port:端口,一般redis数据库的端口为6379

返回值

成功:连接句柄redisContext

失败:NULL

 

2) 

void *redisCommand(redisContext *c,const char *format, ...);

功能:执行的是redis数据库中的操作命令

参数

c:连接数据库时 返回的redisContext

剩下的参数:剩下的参数为变参, 就如C标准函数printf函数一样的变参

返回值

成功:void*, 一般强制转换成为redisReply类 型的进行进一步的处理

失败:NULL

 

/* This is the reply object returned by redisCommand() */

typedef struct redisReply {

int type; /* REDIS_REPLY_* */

long long integer;/* The integer when type is REDIS_REPLY_INTEGER */

size_t len; /* Length of string */

char *str; /* Used for both REDIS_REPLY_ERROR and REDIS_REPLY_STRING */

size_t elements; /* number of elements, for REDIS_REPLY_ARRAY */

struct redisReply **element;/* elements vector for REDIS_REPLY_ARRAY */

} redisReply;

 

 

 

redisReplytype字段的状态标识:

状态标识

含义

REDIS_REPLY_STATUS

表示状态,内容通过str字段查看,字符串长度是len字段

REDIS_REPLY_ERROR

表示出错,查看出错信息,如上的strlen字段

REDIS_REPLY_INTEGER

返回整数,从integer字段获取值

REDIS_REPLY_NIL

没有数据返回

REDIS_REPLY_STRING

返回字符串,查看strlen字段

REDIS_REPLY_ARRAY

返回一个数组,查看elements的值(数组个数),通过

element[index] 的方式访问数组元素,每个数组元素是一个

redisReply对象的指针。

 

3) 

void freeReplyObject(void *reply);

功能:释放redisCommand执行后返回的redisReply所占用的内存

参数redisCommand执行后返回的redisReply

返回值:无

 

redisReply返回结果处理,错误类型可通过redisReplyerrstr字段查看简短的描述:

状态标识

含义

REDIS_OK

正常

REDIS_ERR_IO

IO/写出现异常,通过errno查看原因

REDIS_ERR_EOF

服务器关闭了链接,读结束

REDIS_ERR_PROTOCOL

分析redis协议内容出错

EDIS_ERR_OTHER

其他未知的错误

 

4) 

void redisFree(redisContext *c);

功能:释放redisConnect()所产生的连接

参数redisConnect()所产生的连接

返回值:无

原创粉丝点击