跟着《redis入门指南》学习 2.3节 命令返回值
命令返回值
命令返回值有5种类型,对于每种类型redis-cli的展现结果都不同,如下:
1.状态回复
状态回复(status reply)是最尖端的一种回复,比如向redis发送set命令设置某个键的值时,redis会回复状态ok表示设置成功。另外之前演示的ping命令的回复pong也是状态回复。状态回复直接显示状态信息。例如:
>ping
pong
2.错误回复
当出现命令不存在或命令格式有错误等情况时redis会返回错误回复(error reply)。错误回复以(error)开头,并在后面跟上错误信息。如执行一个不存在的命令
>errorcommend
(error) ERR unknown command 'errorcommend'
3.整数回复
redis虽然没有整数类型,但是却提供了一些用于整数操作的命令,如递增健值的incr命令会以整数形式返回递增后的健值。除此之外,一些其他命令也会返回整数,如可以获取当前数据库中健的数量的dbsize命令等。整数回复(integer reply)以(integer)开头,并在后面跟上整数数据:
>incr foo
1
>incr foo
2
4.字符串回复
字符串回复(bulk reply)是最常见的一种回复类型,当请求一个字符串类型健的健值或者一个其他类型健中的某个元素时就会得到一个字符串回复,字符串回复以双引号包裹:
>get foo
"2"
特殊情况是当请求的健值不存在时会得到一个空结果,显示为(nil)。如
>get noexists
(nil)
5.多行字符串回复
多行字符串回复(multi-bulk reply)同样很常见,如当请求一个非字符串类型健的元素列表时就会收到多行字符串回复,多行字符串回复中的每行字符串都以一个序号开头,如:
>keys *
1)foo
2)wjq