当前位置: 首页 > wzjs >正文

潍坊网站建设教程个人律师网站模板

潍坊网站建设教程,个人律师网站模板,平台设计方案怎么做,巅峰网站建设目录 1.概述2.常见操作2.1 SET/GET2.2 MSET/MGET/MSETNX2.3 GETRANGE/SETRANGE2.4 INCR(BY)/DECR(BY)2.5 STRLEN2.6 APPEND2.7 GETSET 3.小结 1.概述 String是最常用的数据类型,一个key对应一个value。String是二进制安全的,可以包含任何数据&#xff0…

目录

    • 1.概述
    • 2.常见操作
      • 2.1 SET/GET
      • 2.2 MSET/MGET/MSETNX
      • 2.3 GETRANGE/SETRANGE
      • 2.4 INCR(BY)/DECR(BY)
      • 2.5 STRLEN
      • 2.6 APPEND
      • 2.7 GETSET
    • 3.小结

1.概述

  • String是最常用的数据类型,一个key对应一个value。
  • String是二进制安全的,可以包含任何数据(例如图片和序列化对象),支持序列化。
  • 单个Value最大512MB。

在这里插入图片描述

2.常见操作

2.1 SET/GET

语法:

[ ]是可选的参数

SET key value [NX | XX] [GET] [EX seconds | PX milliseconds | EXAT unix-time-seconds | PXAT unix-time-milliseconds | KEEPTTL]

SET命令有EXPXNXXX以及KEEPTTL五个可选参数,其中KEEPTTL为6.0版本添加的可选参数,其它为2.6.12版本添加的可选参数。

  • EX seconds 以秒为单位设置过期时间
  • PX milliseconds 以毫秒为单位设置过期时间
  • EXAT timestamp 设置以秒为单位的UNIX时间戳所对应的时间为过期时间
  • PXAT milliseconds-timestamp 设置以毫秒为单位的UNIX时间戳所对应的时间为过期时间
  • NX 键不存在的时候设置键值
  • XX 键存在的时候设置键值
  • KEEPTTL 保留设置前指定键的生存时间
  • GET 返回指定键原本的值,若键不存在时返回nil

SET命令使用EXPXNX参数,其效果等同于SETEXPSETEXSETNX命令。根据官方文档的描述,未来版本中SETEXPSETEXSETNX命令可能会被淘汰。

EXNX可用于分布式锁。

案例:最常用的set/get

127.0.0.1:6379> set k1 v1
OK
127.0.0.1:6379> get k1
"v1"

案例:NX,键不存在才能创建,否则不能创建

127.0.0.1:6379> set k1 v1 nx
OK
127.0.0.1:6379> set k1 v1 nx
(nil)

案例:XX,已存在的才创建,否则不能创建

127.0.0.1:6379> set k1 v1 
OK
127.0.0.1:6379> set k1 v1 xx
OK
127.0.0.1:6379> get k2
(nil)
127.0.0.1:6379> set k2 v2 xx
(nil)

案例:GET,设置新的值前先把旧的值返回

127.0.0.1:6379> set k1 v1
OK
127.0.0.1:6379> set k1 v2 get
"v1"

案例:EX,10秒过期

127.0.0.1:6379> set k1 v1 ex 10
OK
127.0.0.1:6379> ttl k1
(integer) 8
127.0.0.1:6379> ttl k1
(integer) 6
127.0.0.1:6379> ttl k1
(integer) 4

set ex是原子操作,和先set key value然后expire key是不同的,后者不是原子的

案例:PX,9000毫秒过期

127.0.0.1:6379> set k1 v1 px 9000
OK
127.0.0.1:6379> ttl k1
(integer) 7
127.0.0.1:6379> ttl k1
(integer) 5
127.0.0.1:6379> ttl k1
(integer) 4

案例:KEEPTTL

同一个key如果设置了新的值,又没有追加过期时间,redis会令其立即过期

127.0.0.1:6379> set k1 v1 ex 40
OK
127.0.0.1:6379> ttl k1
(integer) 37
127.0.0.1:6379> set k1 v2
OK
127.0.0.1:6379> ttl k1
(integer) -1

如果需要续接过期时间,就需要用到参数KEEPTTL,设置新值后,过期时间会被续接下来

127.0.0.1:6379> set k1 v1 ex 50  
OK
127.0.0.1:6379> ttl k1
(integer) 46
127.0.0.1:6379> set k1 v1 keepttl
OK
127.0.0.1:6379> ttl k1
(integer) 33

2.2 MSET/MGET/MSETNX

案例:MSET同时设置和获取多个值

127.0.0.1:6379> mset k1 v1 k2 v2 k3 v3
OK
127.0.0.1:6379> mget k1 k2 k3
1) "v1"
2) "v2"
3) "v3"

案例 MSETNX,同时设置多个key的值,且key不存在才设置,只会同时成功或同时失败

失败,因为k1已经存在,k1没有成功修改,k2也根本存不进去

127.0.0.1:6379> flushdb
OK
127.0.0.1:6379> set k1 v1
OK
127.0.0.1:6379> msetnx k1 a1 k2 v2
(integer) 0
127.0.0.1:6379> get k1
"v1"
127.0.0.1:6379> get k2
(nil)

成功,k1,k2都不存在,全部添加成功

127.0.0.1:6379> flushdb
OK
127.0.0.1:6379> msetnx k1 v1 k2 v2
(integer) 1
127.0.0.1:6379> mget k1 k2
1) "v1"
2) "v2"

2.3 GETRANGE/SETRANGE

GETRANGE,类似Java中的substring(),字符串截取, 0到-1代表不截取

案例:

127.0.0.1:6379> set k1 abcdefg
OK
127.0.0.1:6379> getrange k1 0 -1
"abcdefg"
127.0.0.1:6379> getrange k1 1 4
"bcde"

SETRANGE,从第几个字符开始设置新的内容

案例:

127.0.0.1:6379> set k1 abcdefg
OK
127.0.0.1:6379> setrange k1 1 xxyy
(integer) 7
127.0.0.1:6379> get k1
"axxyyfg"

2.4 INCR(BY)/DECR(BY)

数值的加减,值一定要是数字才能进行这个操作

案例:INCR,每次执行加1

127.0.0.1:6379> set k1 100
OK
127.0.0.1:6379> get k1
"100"
127.0.0.1:6379> incr k1
(integer) 101
127.0.0.1:6379> incr k1
(integer) 102
127.0.0.1:6379> incr k1
(integer) 103
127.0.0.1:6379> incr k1
(integer) 104

案例:INCRBY,修改步长为5

127.0.0.1:6379> set k1 0
OK
127.0.0.1:6379> incrby k1 5
(integer) 5
127.0.0.1:6379> incrby k1 5
(integer) 10
127.0.0.1:6379> incrby k1 5

案例:DECR,递减1,DECRBY同理

127.0.0.1:6379> set k1 100
OK
127.0.0.1:6379> decr k1
(integer) 99
127.0.0.1:6379> decr k1
(integer) 98
127.0.0.1:6379> decr k1
(integer) 97
127.0.0.1:6379> set k1 100
OK
127.0.0.1:6379> decrby k1 5
(integer) 95
127.0.0.1:6379> decrby k1 5
(integer) 90
127.0.0.1:6379> decrby k1 5
(integer) 85

2.5 STRLEN

字符串长度

语法

strlen key

案例

127.0.0.1:6379> set k1 aaa
OK
127.0.0.1:6379> strlen k1
(integer) 3

2.6 APPEND

字符串追加

语法

APPEND key value

案例

127.0.0.1:6379> set k1 aaa
OK
127.0.0.1:6379> append k1 bbb
(integer) 6
127.0.0.1:6379> get k1
"aaabbb"

2.7 GETSET

getset,顾名思义,先取值在设置新的值进去,和set key value get命令相同

127.0.0.1:6379> set k1 v1
OK
127.0.0.1:6379> getset k1 v2
"v1"
127.0.0.1:6379> get k1
"v2"

3.小结

字符串是一个最基本的数据结构,可用于分布式锁,点赞数量统计等场景。


文章转载自:

http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://00000000.jcyrs.cn
http://www.dtcms.com/wzjs/620939.html

相关文章:

  • 导航网站没有内页没有了学生没钱怎么开网店
  • python做电子商务网站网站建设 dw
  • 黄石有哪些做视觉网站的公司用户网站模板
  • 做网站每年包多少流量wordpress 不用主题
  • 付公司网站费用怎么做分录wordpress wp play
  • 用jsp做网站主界面建筑工程网课文案
  • 建网站哪便宜12306网站为什么做不好使
  • 产品设计私单网站企业 北京 响应式网站
  • 上海模板建站软件重庆seo优化公司哪家好
  • app网站建设公司在线设计装修户型图
  • 做a小视频网站济南做网站公司哪家好
  • 福建建设工程环保备案网站入口匈牙利网站后缀
  • 网站开发游戏程序开发焦作做网站公司
  • 设计网站与建设网页被禁止浏览怎么解决
  • 长沙长沙网站建设大数据精准营销服务
  • godaddy上传网站网站首页菜单栏表怎么做
  • 网站做搜索关键字好吗网站的风格包含的因素
  • sem推广平台有哪些信息流优化师招聘
  • 网站上传可以通过html页面跳转
  • 上饶哪有做网站的公司可以制作网站的软件是什么
  • 网站开发建设公司电话创建微信公众号步骤
  • asp.net mvc 5网站开发之美 pdf个人做搜索网站违法吗
  • wordpress企业网站入门vs简易新闻建设网站
  • 阿里云ace+wordpress优化设计电子课本
  • 网站开发登录要做哪些验证互联网推广企业
  • 网上怎么做网站深圳vi设计公司哪家专业
  • 寮步营销型网站建设网站内容维护费用
  • 门户网站建设经验总结胶州经济技术开发区 建设局 网站
  • 做暑假工的网站网站运营作用
  • 怎么做一个个人网站手机免费制作网站模板免费下载