随笔分类 - mysql
摘要:1. 我们为什么需要分库分表 在分库分表之前,就需要考虑为什么需要拆分。我们做一件事,肯定是有充分理由的。所以得想好分库分表的理由是什么。我们现在就从两个维度去思考它,为什么要分库?为什么要分表? 1.1 为什么要分库 如果业务量剧增,数据库可能会出现性能瓶颈,这时候我们就需要考虑拆分数据库。从这两
阅读全文
摘要:1.建表优化 1.1尽量使用数值替代字符串类型 1、正例 主键(id):primary key优先使用数值类型int,tinyint 性别(sex):0代表女,1代表男;数据库没有布尔类型,mysql推荐使用tinyint 2、理由 因为引擎在处理查询和连接时会逐个比较字符串中每一个字符; 而对于数
阅读全文
摘要:索引就是通过通过最少的IO次数,从磁盘中检索到目标数据!所以索引的实现本质上就是一个查找算法。 那么,我们需要找到一个最合适的数据结构来实现快速查找功能,最基本的 查询算法当然是顺序查找(linear search),这种复杂度为O(n)的算法在数 据量很大时显然是不合适的,除了顺序查找,在数据结构
阅读全文
摘要:https://www.cnblogs.com/wuzhenzhao/p/11103043.html MyBatis 缓存详解 https://blog.csdn.net/GDUT_Trim/article/details/120117911 MyBatis(一):BaseExecutor与Cach
阅读全文
摘要:Sql语句的执行顺序例:SELECT `name`,COUNT(`name`) AS num FROM student WHERE grade < 60 GROUP BY `name` HAVING num >= 2 ORDER BY num DESC,`name` ASC LIMIT 0,2; 1
阅读全文
摘要:1.MySQL自定义排序函数FIELD() order by FIELD(a.status,3,2,4,1) 按照3,2,4,1 排序 显示 2. FIND_IN_SET(a.name, "a,b,c,d") 判断a.name 是否在 "a,b,c,d" 中 ,判断时 "a,b,c,d" 用逗号分割
阅读全文
摘要:一、第一范式(1NF) 数据表中的每一列(每个字段)必须是不可拆分的最小单元,也就是确保每一列的原子性; 例如:userInfo:山东省烟台市 131777368781 userAds:山东0省烟台市 userTel:131777368781 第二范式(2NF): 满足1NF后,要求表中的所有列,都
阅读全文
摘要:一、SQL优化的一些方法 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where nu
阅读全文
摘要:MySQL索引类型 一、简介 MySQL目前主要有以下几种索引类型:1.普通索引2.唯一索引3.主键索引4.组合索引5.全文索引 二、索引类型 1.普通索引是最基本的索引,它没有任何限制。它有以下几种创建方式:(1)直接创建索引 CREATE INDEX index_name ON table(co
阅读全文
摘要:1 存储过程 存储过程就是一条或者多条SQL语句的集合,可以视为批文件。它可以定义批量插入的语句,也可以定义一个接收不同条件的SQL。 1.1 存储过程语法 1.1.1 创建 CREATE PROCEDURE `NewProc`(IN `contid` int,OUT `contNo` varcha
阅读全文
摘要:视图的含义: 视图是一个虚拟的表,它是把数据库中的一张或者多张表中的一些我们需要的数据列,拼接起来形成的一张虚拟表。创建视图的信息来自表的部分信息,而且是需要的信息。 测试表:user有id,name,age,sex字段 测试表:goods有id,name,price字段 测试表:ug有id,use
阅读全文
摘要:参考 https://blog.csdn.net/weixin_39494923/article/details/91534658 //项目实际使用 就是在你进行数据库操作时,进行数据的第二次封装 package com.yueworldframework.core.mybatis; import
阅读全文
摘要:1、锁的分类 1.1从对数据操作的类型来分 读锁(共享锁):针对同一份数据,多个读操作可以同时进行而不会互相影响。 结论1: --如果某一个会话 对A表加了read锁,则 该会话 可以对A表进行读操作、不能进行写操作; 且 该会话不能对其他表进行读、写操作。 --即如果给A表加了读锁,则当前会话只能
阅读全文