1、问题背景在开发中,我们经常会有逻辑删除和唯一索引同时使用的情况。但当使用mybatis plus时,如果同时使用逻辑删除(https://baomidou.com/guide/logic-delete.html)和唯一索引,会报数据重复Duplicate entry的问题。举例来说,有表user,建立唯一索引(user_name,is_del)CREATE TABLE `user` ( `
写在前面的话:  MySQL5.6支持全文检索,而且支持innodb类型表!!!支持中文检索!!!当然词与词之间要有空格等分割符分开才能识别,这点中英文都样1. 建立索引利用navicat 在设计表中建立FullText类型索引即可,注意“栏位”指要建立索引的列的集合,可以列或多列,建立好就可以对其进行检索在MySQL配置文件中将ft_min_len=1,MySQL全文索
Explain关键字用到的数据表如下:DROP TABLE IF EXISTS `actor`; CREATE TABLE `actor` ( `id` int(11) NOT NULL, `name` varchar(45) DEFAULT NULL, `update_time` datetime DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE
转载 2024-07-25 14:41:03
21阅读
【高性能MySQL】学习笔记第五章:创建高性能的索引1 索引基础1.1 索引的类型2 索引的优点3 高性能的索引策略3.1 独立的列3.2 前缀索引索引选择性 1 索引基础要理解 MySOL中索引是如何工作的,最简单的方法就是去看看本书的“索引”部分:如果想在本书中找到某个特定主题,般会先看书的“索引”,找到对应的页码。 都用过的字典举例,拼音查字、部首查字这些用到的就行拼音和部首的索引
目录事务1、概念2、事务的基本特性(ACID)3、事务中并发致性的问题4、事务的隔离级别MySQL的锁1、按锁的粒度分类:2、按锁的类型分类:3、InnoDB中行锁定的方式4、乐观锁、悲观锁MySQL的储存引擎索引1、索引的概念:2、索引的优缺点:3、MySQL索引的B+树4、索引的类型5、 聚集索引与非聚集索引6、 覆盖索引、回表7、联合索引、最左前缀匹配原则8、索引下推9
客户端把sql语句交给数据库后,需要经过数据库的优化器生成查询计划,在此期间决定是走索引查询还是进行全表扫描。本文将展示字段添加索引前后查询效率的对比,来指出哪些情况适合创建索引1.数据准备本次实验准备了两张表,分别是学生表student_info和课程表course,他们的结构如下CREATE TABLE `student_info` ( `id` int NOT NULL AUTO_INC
转载 2024-07-23 19:31:20
124阅读
索引的优缺点  首先说说索引的优点:最大的好处无疑就是提高查询效率。有的索引还能保证数据的唯一性,比如唯一索引。  而它的坏处也很明显:索引也是文件,我们在创建索引时,也会创建额外的文件,所以会占用些硬盘空间。其次,索引也需要维护,我们在增加删除数据的时候,索引也需要去变化维护。当个表的索引多了以后,资源消耗是很大的,所以必须结合实际业务再去确定给哪些列加索引索引的结构  再说说索引的基本结
转载 2024-03-18 10:50:06
231阅读
        数据库中我们最常用到的元素就是database、table、column。Mybatis作为强大的ORM框架,当中也包含了获取处理这些元素的代码,本篇将介绍相关的内容。、Catalog & Schema        在介绍具体的代码
转载 2月前
522阅读
这种方式的优点是 :对于需求比较简单的系统,效率较高。缺点是 ,当 SQL 有变化时都需要重新编译代码, 般情况下不建议使用MyBatis的注解方式 。因此,(原书)本章不会进行深入讲解。在MyBatis注解 SQL 中,最基本的就是@Select 、@Insert 、@Update 和@Delete 四种 。&nb
如果在个列上同时建唯一索引和普通索引的话,mysql会自动选择唯一索引。 谷歌下: 唯一索引和普通索引使用的结构都是B-tree,执行时间复杂度都是O(log n)。 补充下概念:1、普通索引(非唯一索引)   普通索引(由关键字KEY或INDEX定义的索引)的唯一任务是加快对数据的访问速度。因此,应该只为那些最经常出现在查询条件(WHEREcolumn=)或排序条件(ORDERBY
转载 2024-05-25 23:26:24
34阅读
MyBatis ORMORM——Object Relation Mapping 其实就是个Class对应个Table,该Class里面的各个Property对应Table里面的各个字段。MyBatis 缓存其实就是将你的查询语句和查询结构会以键值对的形式存储到缓存中,就比如说:“Select * from atable” 这样你下次查询的时候,我们就会直接从缓存中获取这条查询结果的值了。当然任
转载 4月前
164阅读
、介绍1.什么是索引般的应用系统,读写比例在10:1左右,而且插入操作和般的更新操作很少出现性能问题,在生产环境中,我们遇到最多的,也是最容易出问题的,还是些复杂的查询操作,因此对查询语句的优化显然是重中之重。说起加速查询,就不得不提到索引了。2.为什么要有索引呢?索引在MySQL中也叫做“键”,是存储引擎用于快速找到记录的种数据结构。索引对于良好的性能非常关键,尤其是当表中的
今天在我的虚拟机中布置了环境,测试抓图如下:抓的这几个都是第次执行的,刷了几次后,取平均值,效率大致相同,而且如果在个列上同时建唯一索引和普通索引的话,MySQL会自动选择唯一索引。谷歌下:唯一索引和普通索引使用的结构都是B-tree,执行时间复杂度都是O(log n)。1、普通索引   普通索引(由关键字KEY或INDEX定义的索引)的唯一任务是加快对数据的访问速度。因此,应该只
转载 2024-03-18 23:43:13
42阅读
(1)创建表时,不能在同个字段上建立两个索引(主键默认建立唯一索引),在需要经常查询的字段上建立索引(如:deal_id已经是主键,不能再次执行:create index tmp_table_index on tmp_table(deal_id),会报错);           &nb
转载 2024-05-14 20:36:06
123阅读
目录1、MySQL的主键。2、MySQL的唯一约束。3、MySQL的索引。4、主键、唯一约束和唯一索引的区别。1、MySQL 的 主键。"主键" 的完整称呼是 "主键约束" 。MySQL 主键约束是个列或者列的组合(其中由多列组合的主键称为复合主键),其值能唯一地标识表中的每行。这样的列或多列称为表的主键,通过它可以强制表的实体完整性。。(1)个表可以没有主键,而且最多只能有个主键。(2
转载 2023-07-18 15:09:53
219阅读
索引规范1.业务上具有唯一特性的字段,即使是多个字段的组合,也必须建成唯一索引;-> 尽量使用非空的唯一索引,尽量使用与业务无关的代理主键。2.在varchar,text等长字符串类型字段上建立索引时,必须指定索引长度(前缀索引),没必要对全字段建立索引,根据实际文本区分度决定索引长度即可;-> 使用select count(distinct left(列名, 索引长度))/
转载 2024-03-16 04:09:07
129阅读
从mysql查询操作分析:普通索引:查到满足条件的第条记录后,还会继续查找下条记录,直到出现满足条件的记录出现后停止检索唯一索引:由于索引定义了唯一性,查找到第个满足条件的记录后,就会停止继续检索InnoDB 的数据是按数据页为单位来读写的。也就是说,当需要读条记录的时候,并不是将这个记录本身从磁盘读出来,而是以页为单位,将其整体读入内存。对于查询来说使用这两种索引差别微乎其微。数据页大小
 默认索引对于每个集合(除了capped集合),默认会在_id字段上创建索引,而且这个特别的索引不能删除。_id字段是强制唯一的,由数据库维护。嵌套关键字在MongoDB中,甚至能够在个嵌入的文档上(embedded)建立索引.> db.things.ensureIndex({"address.city":1}) 文档作为索引任何类型,包括文档(docume
转载 2024-05-20 21:16:47
104阅读
文章目录查询流程区别更新过程区别change buffer索引选择change buffer 与 redo log 对于普通索引唯一索引的使用,对于个开发来说,我相信更多的区别场景就是:如果需要在库里面做唯一限制,就使用唯一索引;否则就使用普通索引了。下面主要介绍下这 2 种索引的区别(使用MySQL时,大多数场景下使用的是B+ 索引,下面的案例或者描述默认都是 B+ 索引)。 查询
1.什么是索引给出索引的官方介绍:索引(Index)是帮助MySQL高效获取数据的数据结构。Mysql索引主要有两种结构:B+Tree索引和Hash索引。我们平常所说的索引,如果没有特别指明,般都是指B树结构 组织的索引(B+Tree索引)。索引相当于本字典的目录,通过目录快速的找到需要找的词。提高查找的速度。因此在mysql建立索引,是非常有必要的事情,mysql中的索引可以大大增强查询的速
转载 2023-10-21 08:06:15
173阅读
  • 1
  • 2
  • 3
  • 4
  • 5