handler使用_java中的handler

handler使用_java中的handler创建测试表:root@test04:53:11>showcreatetablet;+——-+———————————————————————————-

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

创建测试表:
root@test 04:53:11>show create table t;
+——-+——————————————————————————————————————————————————————————————————————————+
| Table | Create Table                                                                                                                                                                                                                 |
+——-+——————————————————————————————————————————————————————————————————————————+
| t     | CREATE TABLE `t` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `a` varchar(10) NOT NULL,
  `b` varchar(10) NOT NULL,
  PRIMARY KEY (`id`),
  KEY `a_b` (`a`,`b`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=gbk |
+——-+——————————————————————————————————————————————————————————————————————————+
1 row in set (0.00 sec)

1). 打开索引:

 P <indexid> <dbname> <tablename> <indexname> <columns> [<fcolumns>]
columns表示指定获取的列
fcolumns用于做过滤的列
各个字段用TAB进行分割,handlersocket将打开相应的index,并保持打开直到客户端关闭,重复打开相同的indexid将导致之前的index被关闭并重新打开。indexname=’PRIMARY’表示主键索引
$sudo telnet localhost 9999
Trying 127.0.0.1…
Connected to localhost.localdomain (127.0.0.1).
Escape character is ‘^]’.
P       1       test    t       primary id,a,b
2       1       idxnum
P       1       test    t       PRIMARY id,a,b
0       1
注意,这里的大小写是敏感的,另外primary后面的不是空格,而是tab

2).插入一条数据:
<indexid> + <vlen> <v1> … <vn>
indexid是之前打开的索引id;
vlen是索引的列数,vlen不大于open_index时的columns个数紧随其后的是各列的值,对于不在其中的列,值被设为默认值
例如:
P       1       test    t       primary id,a,b
1       +       3       NULL    a4      b4

0       1       5

1       +       3       7       aaaaaaa bbbbbb

0       1       0

返回值0     1     表示执行成功
看起来,当自增列为NULL时,返回值中包含了自增列的值

3).更新/删除一条数据:
<indexid> <op> <vlen> <v1> … <vn> [LIM] [IN] [FILTER …] MOD


op:用于支持比较操作,目前支持 = 、>、>=、<、<=
vlen:小于或等于索引的列的个数
LIM:<limit> <offset>
IN:  @ <icol> <ivlen> <iv1> … <ivn>,icol要比索引列的个数小,
IN类似于SQL中的where语法
FILTER:<ftyp> <fop> <fcol> <fval>
ftyp值为 ‘F’(filter)或者‘W’(while)
fop指定比较操作,与op相似
fcol:必须比fcolumns要小
可以设置多个filter,这类似于where字句中的 ‘and’

MOD是一个类似如下的序列:
<mop> <m1> … <mk>
mop的值包括: 
U   (update)
+   (increment)
–    (decrement)
D    (delete)
当在mop后面加?时,将返回修改前的数据
<m1>…<mk>,指定列的值
当执行delete操作时,即mop = D时,这些值会被忽略
当mop为+或-时,后面的值必须为整数
当mop为-时,若从负数变成正数或从正数变成负数,将不会改变列的值

例如,delete from test.t where id > 3 limit 1;
P       2       test    t       PRIMARY id,a,b

0       1

2       >       1       3       1       0       D
update test.t set a = ‘aa’, b = ‘cc’ where id = 3;
2       =       1       3       1       0       U       3       aa      bb

0       1       1

4). 查询数据:
<indexid> <op> <vlen> <v1> … <vn> [LIM] [IN] [FILTER …]
与3)类似,但没有mod操作
例如SQL操作:select id,b,a from test.t where id >= 5 limit 3
P       2       test    t       PRIMARY id,b,a

0       1

2       >=      1       5       3       0

0       3       5       b4      a4      7       bbbbbb  aaaaaaa 8       NULL    NULL



可以看出handlersocket还是有一些限制的:

1.无法支持比较复杂的查询,例如跨表、跨库的嵌套查询

2.必须要有索引

3.一些复杂的sql例如insert…..on duplicate key , insert…..select等类似的查询还无法支持

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/172634.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • PDAF原理简介_pfc电路工作原理图

    PDAF原理简介_pfc电路工作原理图PDAF原理原理及分类原理:是在感光芯片上预留出一些规律性对称的遮蔽像素点,专门用来进行相位检测,通过像素之间的距离及变化来决定对焦的偏移量即相位差(PD值)从而实现快速对焦。SP(shieledpixel)屏蔽掉像素一般的感光区域(黑色部分),值获得一半信号。需要另外的像素屏蔽掉另一半信号,得到完整的相位差信息。SP越多,对焦越快,但信号损失越严重,目前SP密度控制在1%~3%。屏蔽掉像素一般的感光区域(黑色部分),值获得一半信号。需要另外的像素屏蔽掉另一半信号,得到完整的相位差信息。S

    2022年9月7日
    1
  • 学计算机的男生喜欢什么样的女生,it男喜欢什么样的女孩

    学计算机的男生喜欢什么样的女生,it男喜欢什么样的女孩喜欢什么样的女孩子每个男生的定义都不一样,有些男生更喜欢性感魅惑的御姐范儿气质,当然,也有很多男生偏向甜美可爱风格的。那么it男喜欢什么样的女孩子呢?来源:图虫作者:79054344888189459虽然很多花心的男生喜欢的女孩子的类型是不固定的,而且一般都是见一个爱一个的,但实际上很多男生的心里对于自己喜欢的女孩子的类型是很清楚的,所以就算有女生喜欢他们,他们也不反感,但是接受却是一件困难的事情…

    2022年7月25日
    19
  • copyproperties爆红_利用BeanUtils.copyProperties 克隆出新对象,避免对象重复问题[通俗易懂]

    copyproperties爆红_利用BeanUtils.copyProperties 克隆出新对象,避免对象重复问题[通俗易懂]1、经常用jQuery获取标签里面值val(),或者html(),text()等等,有次想把获取标签的全部html元素包括自己也用来操作,查询了半天发现$(“#lefttr1”).prop(“outerHTML”)即可。2、当时遇到这个错误,后发现是缺少主键错误。3、JsonMappingException:Nosuitableconstructorfound,reatethedef…

    2022年9月26日
    1
  • 【带你入门】java网络编程

    【带你入门】java网络编程网络编程网络编程对于很多的初学者来说,都是很向往的一种编程技能,但是很多的初学者却因为很长一段时间无法进入网络编程的大门而放弃了对于该部分技术的学习。在学习网络编程以前,很多初学者可能觉得网络编程是比较复杂的系统工程,需要了解很多和网络相关的基础知识,其实这些都不是很必需的。首先来问一个问题:你会打手机吗?很多人可能说肯定会啊,不就是按按电话号码,拨打电话嘛,很简单的事情啊!其实初学者如果入门网

    2022年6月12日
    39
  • Oracle创建表空间、创建用户的完整过程「建议收藏」

    Oracle创建表空间、创建用户的完整过程「建议收藏」我在工作学习过程中经常用到Oracle,由于经验欠缺,熟练度不足,每次都要百度一下。现在总结一下Oracle创建用户的过程,分享给大家。这里我就直接把sql语句贴出来,使用时直接复制粘贴即可。/*步骤:1、创建表空间2、创建用户3、用户授权*//*创建表空间*/createtablespaceQCJ_TABLESPACE…

    2022年7月11日
    28
  • Ubuntu 登陆无限闪退

    Ubuntu 登陆无限闪退引子配置环境变量时,logout后,再次登陆,出现无限闪退情况,即输入密码,回车后闪了一下,又回到登陆界面,无奈欲重装虚拟机,觉太麻烦,故Google之。总结思路如下

    2022年7月21日
    16

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号