(Redis基础教程之五)如何在Redis中操作字符串
- 如何在ubuntu18.04上安装和保护redis
- 如何连接到Redis数据库
- 如何管理Redis数据库和Keys
- 如何在Redis中管理副本和客户端
- 如何在Redis中管理字符串
- 如何在Redis中管理list
- 如何在Redis中管理Hashes
- 如何在Redis中管理Sets
- 如何在Redis中管理Sorted Sets
- 如何在Redis中运行事务
- 如何使Redis中的Key失效
- 如何解决Redis中的问题
- 如何从命令行更改Redis的配置
- Redis数据类型简介
介绍
Redis是一个开源的内存中键值数据存储。在Redis中,字符串是您可以创建和管理的最基本的值类型。本教程概述了如何创建和检索字符串以及如何操作字符串键所保存的值。
如何使用本指南
本指南以备有完整示例的备忘单形式编写。我们鼓励您跳至与您要完成的任务相关的任何部分。
本指南中显示的命令已在运行Redis版本4.0.9的Ubuntu 18.04服务器上进行了测试。要设置类似的环境,您可以按照我们的指南如何在Ubuntu 18.04上安装和保护Redis的步骤1进行操作。我们将通过使用Redis命令行界面运行它们来演示这些命令的行为。请注意,如果您使用其他Redis界面(例如Redli),则某些命令的确切输出可能会有所不同。 redis-cli
另外,您可以提供一个托管的Redis数据库实例来测试这些命令,但是请注意,根据数据库提供者所允许的控制级别,本指南中的某些命令可能无法按所述方式工作。要配置DigitalOcean托管数据库,请遵循我们的托管数据库产品文档。然后,您必须 安装Redli 或 设置TLS隧道才能通过TLS连接到托管数据库。
创建和管理字符串
包含字符串的键只能包含一个值。您不能在一个键中存储多个字符串。但是,Redis中的字符串是二进制安全的,这意味着Redis字符串可以保存任何类型的数据,从字母数字字符到JPEG图像。唯一的限制是字符串的长度必须小于或等于512 MB。
要创建一个字符串,请使用set命令。例如,以下set命令创建一个名为key的键key_Welcome1,该键包含字符串"Howdy":
set key_Welcome1 "Howdy"
OK
要在一个命令中设置多个字符串,请使用mset:
mset key_Welcome2 "there" key_Welcome3 "partners,"
您还可以使用以下append命令创建字符串:
append key_Welcome4 "welcome to Texas"
如果成功创建了字符串,append将输出一个整数,该整数等于该字符串包含的字符数:
16
注意,append也可以用来更改字符串的内容。有关详细信息,请参见有关处理字符串的部分。
检索字符串
要检索字符串,请使用以下get命令:
get key_Welcome1
Howdy
要使用一个命令检索多个字符串,请使用mget:
mget key_Welcome1 key_Welcome2 key_Welcome3 key_Welcome4
1) "Howdy"
2) "there"
3) "partners,"
4) "welcome to Texas"
对于传递给mget它的每个键都不包含字符串值或根本不存在,该命令将返回nil。
操作字符串(Manipulating Strings)
如果字符串由整数组成,则可以运行incr命令将其增加一:
set key_1 3
incr key_1
4
同样,您可以使用以下incrby命令将数字字符串的值增加特定的增量:
incrby key_1 16
20
该decr和decrby命令的工作方式相同,但他们减少存储在数字字符串的整数:
decr key_1
19
decrby key_1 16
3
如果字母字符串已经存在,append则将值附加到现有值的末尾,并返回字符串的新长度。为了说明这一点,以下命令将附加", y'all"到key所保存的字符串上key_Welcome4,因此现在该字符串将显示为"welcome to Texas, y'all":
append key_Welcome4 ", y'all"
15
您也可以将整数附加到包含数字值的字符串中。以下示例附加45到3,其中包含整数key_1,因此它将保持345。在这种情况下,append还将返回字符串的新长度,而不是其新值:
append key_1 45
3
由于此键仍仅保留数字值,因此可以对其执行incr和decr操作。您也可以在整数字符串后附加字母字符,但是如果这样做,则在字符串上运行incr和运行decr将产生错误,因为字符串值不再是整数。
结论
本指南详细介绍了许多用于在Redis中创建和管理字符串的命令。如果您想在本指南中概述其他相关的命令,参数或过程,请在下面的评论中提出疑问或提出建议。
有关Redis命令的更多信息,请参阅关于如何管理Redis数据库的系列教程。
作者:分布式编程
出处:https://zthinker.com/
如果你喜欢本文,请长按二维码,关注 分布式编程
.
(Redis基础教程之五)如何在Redis中操作字符串的更多相关文章
- (Redis基础教程之六)如何使用Redis中的List
如何在ubuntu18.04上安装和保护redis 如何连接到Redis数据库 如何管理Redis数据库和Keys 如何在Redis中管理副本和客户端 如何在Redis中管理字符串 如何在Redis中 ...
- Redis入门教程(三)— Java中操作Redis
在Redis的官网上,我们可以看到Redis的Java客户端众多 其中,Jedis是Redis官方推荐,也是使用用户最多的Java客户端. 开始前的准备 使用jedis使用到的jedis-2.1.0. ...
- mongodb,Mysql,redis基础教程
数据库基础 1:mongodb基础教程 1:pymongo基础教程 2:Mysql基础教程 3:redis基础教程
- 如何在 JavaScript 中检查字符串是否包含子字符串?
如何在 JavaScript 中检查字符串是否包含子字符串? // var test4 = _.includes(string, substring); 该方法需要此文件 <script src ...
- java 中操作字符串都有哪些类?(未完成)它们之间有什么区别?(未完成)
java 中操作字符串都有哪些类?(未完成)它们之间有什么区别?(未完成)
- NewLife.Redis基础教程
X组件缓存架构以ICache接口为核心,包括MemoryCache.Redis和DbCache实现,支持FX和netstandard2.0!后续例程与使用说明均以Redis为例,各缓存实现类似. Re ...
- Redis基础教程
说明:本文中涉及的代码是c#所写,连接redis的第三方驱动为ServiceStack.Redis.连接redis的客户端软件为redis-desktop-manager. 一.Redis是什么 Re ...
- Redis入门教程:特性及数据类型的操作
虽然Redis已经很火了,相信还是有很多同学对Redis只是有所听闻或者了解并不全面,下面是一个比较系统的Redis介绍,对Redis的特性及各种数据类型及操作进行了介绍.是一个很不错的Redis入门 ...
- Spring Boot 2.x基础教程:找回启动日志中的请求路径列表
如果您看过之前的Spring Boot 1.x教程,或者自己原本就对Spring Boot有一些经验,或者对Spring MVC很熟悉.那么对于Spring构建的Web应用在启动的时候,都会输出当前应 ...
- (Python基础教程之十三)Python中使用httplib2 – HTTP GET和POST示例
Python基础教程 在SublimeEditor中配置Python环境 Python代码中添加注释 Python中的变量的使用 Python中的数据类型 Python中的关键字 Python字符串操 ...
随机推荐
- Vuex的四个轻骑兵:mapState、mapGetter、mapMutation、mapAction(转载)
vuex进阶一.state1.1 引入vuex 以后,我们需要在state中定义变量,类似于vue中的data,通过state来存放状态 import Vue from 'vue'import Vue ...
- Python自动复制Excel数据:将各行分别重复指定次数
本文介绍基于Python语言,读取Excel表格文件数据,并将其中符合我们特定要求的那一行加以复制指定的次数,而不符合要求的那一行则不复制:并将所得结果保存为新的Excel表格文件的方法. 这 ...
- 页面多次跳转加载时,window.onscroll方法失效问题解决
1. vue mounted 方法中,写有滚动监听方法,为A页面 window.scroll = function () { .... } 从A页面跳转到B页面,再从B页面跳转回A页面, window ...
- Centos7.9安装Docker和Docker compose
什么是docker环境 Docker环境是指在计算机中安装和配置了Docker引擎的运行环境.Docker是一种容器化平台,它提供了一种轻量级的虚拟化技术,能够将应用程序及其依赖项打包成一个独立的容器 ...
- 开发一个属性名提示友好的Vue组件
这两天开发了一个组件,开发好之后想着先本地npm link 用一用试试,然后在vue3 项目中link了过来,发现VSCODE没有属性提示,鉴于考虑到一个好的组件应该是提示友好的,于是给组件准备加上属 ...
- ASP.NET Core – MVC vs Razor Page
前言 早年只有 MVC, Razor Page 是后来才出现的. 一开始其实我很看不起 Razor Page, MVC 能做的东西为什么要搞多一个 Razor Page 来做呢? 但我还是尝试用了起来 ...
- Python 潮流周刊#70:微软 Excel 中的 Python 正式发布!(摘要)
本周刊由 Python猫 出品,精心筛选国内外的 250+ 信息源,为你挑选最值得分享的文章.教程.开源项目.软件工具.播客和视频.热门话题等内容.愿景:帮助所有读者精进 Python 技术,并增长职 ...
- Blazor开发框架Known-V2.0.11
Known今天发布了V2.0.11版本,本次版本添加了系统WebApi在线测试,系统菜单样式配置,表格支持用户设置栏位显隐和顺序,系统上下文支持静态组件与后端交互,以及对PgSQL进行了详细的测试,修 ...
- 九问 GBase | 如何看待“科技制裁”?如何助力中国数据库国产化落地?
导读: Oracle.SAP.Apple.Google.Github等国际科技巨头纷纷宣布停止在俄罗斯业务,英特尔.AMD.戴尔等科技企业也被曝已中断向俄供货.当全面科技制裁来临,俄罗斯将如何应对此次 ...
- yarn serve 不能开启vue项目 the project seem to require yarn but isnot install
error: answer: 删除 yarn.lock 或者使用 npm run serve 替换 ; ps: yarn.lock 是锁定第三方包版本的文件: