发表于: 2017-09-30 22:19:56
1 709
今日完成的事情:
准备小课堂知识点,熟悉小课堂流程
Sql执行机制
1.客户端发送一条查询给服务器。
2.服务器先检查查询缓存,如果命中了缓存,则立刻返回存储在缓存中的结果。否则进入下一阶段。
3。服务器端进行SQL解析,预处理,再由优化器生成对应的执行计划
4。MySql根据优化器生成的执行计划,调用存储引擎的API执行查询。
5。返回结果给客户端。
select具体用法:
-- 检索单个列
SELECT prod_name FROM products;
-- 检索多个列
SELECT prod_id, prod_name, prod_price FROM products;
-- 检索所有的列
SELECT * FROM products;
-- 检索不同的值
select distinct vend_id from products;
-- 限制结果 (MYSQL)
SELECT prod_name FROM products;
select prod_name from products limit 5;
select prod_name from products limit 3 offset 0; -- 从第0行开始,检索3行
select prod_name from products limit 0, 3; -- 从第0行开始,检索3行
唯一索引机制
唯一索引怎么判断列唯一:先建立唯一索引, MySQL会在有新记录插入数据表时,自动检查新记录的这个字段的值是否已经在某个记录的这个字段里出现过了;如果是,MySQL将拒绝插入那条新记录。也就是说,唯一索引可以保证数据记录的唯一性。事实上,在许多场合,人们创建唯一索引的目的往往不是为了提高访问速度,而只是为了避免数据出现重复。(唯一索引的异常,时由数据库判断,一次 insert 即可,然后程序捕获异常处理)
最好是判断一下,插入之前先看看有没有相同的记录;当然,不做判断直接插入也是可以的,如果没异常,插入成功;如果捕捉到异常,根据异常的类型,判断有重复记录,做出对应业务处理。(去 SqlServer 官方要编号列表呀。然后你的服务器维护这样一个列表,就可以判断哪种因素的原因了)
缓存机制学习
show variables like "%cache";
show status like "%qcache%";
明日计划的事情:
继续学习任务一try………catch
学习spring不懂的内容
遇到的问题及解决方法:
大多是概念,百度理解
收获:
熟悉了流程,复习了索引以及select语句
评论