数据库
诸葛_小明
这个作者很懒,什么都没留下…
展开
-
对mysql乐观锁、悲观锁、共享锁、排它锁、行锁、表锁概念的理解
记得在上大学那会开始,在大学的课堂上,常常会听到老师讲什么共享锁,排它锁各种锁的词汇,以前仅仅听过一次就没有管了,并没有进行深入的研究最近,在各种群里,又看见了什么乐观锁、悲观锁什么鬼的感觉很高级的词汇,于是乎今天对这几个概念进行学习,揭开它神秘的面纱,缕缕思路记录下我对这几个概念的想法实验环境:mysql5.6存储引擎:innoDB我们在操作数据库的时候,可能会由于并发问题而引起...转载 2018-11-01 16:25:17 · 154 阅读 · 0 评论 -
mybatis中的#和$的区别
#{}相当于对数据 加上 双引号,select * from test where id = #{id}这句话相当于select * from test where id = ‘1’而${} 不会加任何处理select * from test where id =1我们平时一般都用#{}总结:#{} 可以防止sql注入 ${} 不能select * from test w...原创 2018-11-02 10:25:59 · 129 阅读 · 0 评论 -
关于mysql varchar(N)
varchar(N) 能存多少个中文字符?4.0版本以下,varchar(50),指的是50字节,如果存放UTF8汉字时,只能存16个(每个中文3字节)gbk :每个字符最多占用2个字节utf8:每个字符最多占用3个字节5.0版本以上,varchar(50),指的是50字符,无论存放的是数字、字母还是UTF8中文(每个中文3字节),都可以存放50个,是的 varchar(50)是可以存50...原创 2018-11-15 09:30:42 · 194 阅读 · 0 评论 -
SQL 基础语句整理
SQL教程 SELECT 语句SELECT * FROM 表名称DISTINCT 语句SELECT DISTINCT 列名称 FROM 表名称SELECT LastName,FirstName FROM Persons关键词 DISTINCT 用于返回唯一不同的值。WHERE 子句SELECT 列名称 FROM 表名称 WHERE 列 运算符 值SELECT...原创 2018-11-28 14:44:49 · 205 阅读 · 0 评论 -
MySQL索引优化 笔记
少取字段,建立合理的索引表优化:1 定长与变长分离 如果都是定长 查询比较快 因为每一行的字节都是固定的 fixed2 常用字段和不常用字段要分离 用户表 常用 放主表 个人介绍不常用 还比较长 可以单放一张表3 在1对多 需要关联统计的字段上,分析字段的查询场景,查询频率低的字段单拆出来 添加冗余字段添加速度 和三范式相反 比如 ...原创 2018-11-29 08:40:06 · 171 阅读 · 0 评论 -
SQL语句优化 学习笔记
sql语句时间花在哪了?1 等待时间 2 执行时间这两个时间并非孤立的,单条语句执行的快 其他语句等待的时间就少 执行时间花在哪了?1 查找 沿着索引查找 慢者可能全表扫描2 取出 查到行后,把数据取出来(sending data) 如何查询快?1 查询快 联合索引的顺序 区分度 长度2 取的快 索引覆盖(不回行)3 传输的少 ,更少的行和列 切...原创 2018-11-29 08:40:20 · 156 阅读 · 0 评论 -
mybatis 插入语句 返回自增长id方法
背景:目前有个插入语句需要获取插入记录的id 因为id是自增长的,所以要在插入后返回这个id错误1:mapper.xml:<!-- 新增 返回自增长id--><insert id="save" parameterType="pd" resultType="int"> insert into sys_push( username,title,co...原创 2019-01-11 09:39:20 · 633 阅读 · 0 评论 -
高性能mysql实战 笔记(一)
模拟电商数据库设计及架构优化实战(只设计数据库设计,不包括前后端)项目说明(模拟电商项目):数据库设计规范的指定:数据库命名规范:一 所有数据库对象名称必须使用小写字母并用下划线分割二 所有数据库对象名称禁止使用mysql保留关键字(如表名为from)三 数据库对象的命名要见名识义,并且最好不要超过32个字符例: 用户数据库表 mc_userdb 用...原创 2019-04-14 22:14:20 · 734 阅读 · 0 评论