当前位置: 首页 > news >正文

青岛市蓝色经济区建设官方网站营销网站建设与推广方案

青岛市蓝色经济区建设官方网站,营销网站建设与推广方案,做企业网站需要多久,青岛网站制作服务接上文 mysql从零开始#xff08;3#xff09; 索引 索引是在数据库表的字段上添加的#xff0c;是为了提高查询效率存在的一种机制。一张表的一个字段可以添加一个索引#xff0c;也可以多个字段联合起来添加索引。索引相当于一本书的目录#xff0c;是为了缩小扫描范围…接上文 mysql从零开始3 索引 索引是在数据库表的字段上添加的是为了提高查询效率存在的一种机制。一张表的一个字段可以添加一个索引也可以多个字段联合起来添加索引。索引相当于一本书的目录是为了缩小扫描范围而存在的一种机制。索引是需要排序的索引存储成一个B-Tree数据结构 mysql查询方面有两种方式全表扫描、根据索引检索 原理 在任何数据库当中主键上都会自动添加索引对象id字段上自动有索引因为id是PK。另外在mysql当中一个字段上如果有unique约束的话也会自动创建索引对象。在任何数据库当中任何一张表的任何一条记录在硬盘存储上都有一个硬盘的物理存储编号。在mysql当中索引是一个单独的对象不同的存储引擎以不同的形式存在。 在MyISAM存储引擎中索引存储在一个.MYI文件中 在InnoDB存储引擎中索引存储在一个逻辑名称叫tablespace中 在MEMORY存储引擎当中索引被存储在内存当中 不管索引存储在哪里索引在mysql当中都是一个B-Tree的形式存在。 创建删除查看 何时 数据量庞大全表查询太费时该字段经常出现在where的后面以条件的形式存在即该字段总是被扫描该字段很少进行DML(insert delete update)操作因为DML之后索引需要重新维护 尽管索引可以极大提高查询的效率我们也不应该随意添加索引因为索引底层是B-Tree索引过多的话会使索引维护起来的代价过大。 我们在查询的时候可以尽量通过主键字段、unique字段查询效率较高、代价较小。 语法 # 创建索引 create index 索引名 on 表名(字段名); # 删除索引 drop index 索引名 on 表名; # 查看sql语句是否使用了索引检索 explain sql语句; # 如果type类型是all说明没有使用索引如果是ref说明使用了索引索引失效 模糊查询 select * from test where name like %T;即使name加上了索引也不能使用索引查找。所以在查找时应当尽量避免模糊查询的时候用%开头。 or 使用or做条件筛选时只有or两边的字段都有索引时才会走索引。 复合索引 使用复合索引时要使用左侧的列来查找索引才能生效。如 create index test_id_name on test(id,name); # 走索引 mysql explain select * from test where id 1; # 不走索引 mysql explain select * from test where name 1;运算 如果在where中索引列参与了运算索引失效。 # ref select * from test where id 1; # all select * from test where id 1 1;函数 如果在where中索引列使用了函数索引失效 # ref select * from test where lower(name) tom;视图view 基础知识 视图就是站在不同的角度去看待同一份数据对视图对象的增删改查会影响到原表个人感觉有点像c的引用 创建视图的语句为 create view 视图名 as DQL语句比如 # 创建一个test表的视图 create view test_view as select * from test; # 删除视图 drop view test_view;对视图对象的增删改查和对原表的操作一样。 作用 视图的主要作用是简化复杂的sql语句就像在编程时我们会将常用的功能单独拿出去写成一个函数一样视图也是起到这样的作用。 假设有一条非常复杂的SQL语句而这条SQL语句需要在不同的位置上反复使用为了防止每一次使用这个sql语句的时候都需要重新编写我们就可以将其以视图对象的形式新建在需要编写这条SQL语句的位置直接使用视图对象可以大大简化开发、利于维护因为修改的时候也只需要修改一个位置就行只需要修改视图对象所映射的SQL语句。 另外需要注意视图不是在内存当中视图对象也是存储在硬盘上的不会消失。 范式 概念 数据库设计范式是数据库表的设计依据按照范式进行设计可以有效避免表中数据的冗余、空间浪费。数据库设计范式共有三个 第一范式第二范式第三范式 第一范式 必须有主键并且每一个字段都是原子性不可再分 个人信息1tom2jack 上面这个表就是不满足第一范式的他没有主键即使将个人信息作为主键也不符合因为个人信息可以分为身份id和姓名 第二范式 满足第一范式所有非主键字段必须完全依赖主键不要产生部分依赖 ID名字朋友ID朋友姓名11tom21T12jack22J13sun21T11tom22J 这张表就是典型的多对对关系每个人都可能有多个朋友。 首先先修改上面这个表使其满足第一范式ID和朋友ID联合作为主键。 但是此时仍然不满足第二范式因为第二范式要求所有非主键字段必须完全依赖主键在此刻名字依赖于ID朋友名字依赖于朋友ID这成为了部分依赖复合主键时这就需要分表。 ID(PK)姓名11tom12jack13sun 朋友ID(PK)朋友姓名21T22J id(PK)姓名(FK)朋友姓名(FK)11121212223132141122 第三范式 满足第二范式要求所有非主键字典必须直接依赖主键不要产生传递依赖 ID(PK)名字老师ID老师姓名11tom21T12jack22J13sun23S11tom23S 该表是典型的多对一的典型一个老师可能有多个学生 该表满足第一范式有主键 该表满足第二范式主键不是复合主键没有产生部分依赖。主键是单一主键 但是该表不满足第三范式有传递依赖因为老师姓名依赖于老师ID老师ID依赖于ID产生了传递依赖。应该更改为 老师ID(PK)老师名字11T12J13S ID(PK)姓名老师ID(FK)11tom2112jack2213sun2311tom23
http://www.dnsts.com.cn/news/227393.html

相关文章:

  • 建设厅网站关于建筑资质合并网页制作基础教程课程标准
  • 杭州住房城乡建设网站查询seo网络推广是干嘛的
  • 大型旅游网站源码 织梦深圳市测绘建设局网站
  • 西安开发网站建设宁波百度关键词推广
  • 哪些网站结构是不合理的一个网站上面有名优
  • asp网站做seo免费新闻源发布平台
  • 京东网站哪个公司做的智慧团建电脑版登录入口官网
  • 济南商务网站建设python做网站 教育
  • 美工做任务网站wordpress创建页面
  • 赣州专业网站推广上海网站建设有限公司
  • 惠州网站搭建怎么做博客网站
  • 做响应式网站一般都用哪些框架沧州网站开发
  • 江门网站推广多少钱网站运营流程
  • 免费自己制作logo的网站免费微网站建站系统源码
  • 最差网站设计宁波建设商城网站
  • 织梦 音乐网站WordPress头像美化插件
  • 网站有死链怎么处理阳泉网站建设网站
  • 做网站被骗预付款怎么办贵阳公众号开发公司
  • 企业网站推荐响应式网站难做
  • 重庆网站建设技术做贸易网站
  • 雄安网站建设400多少钱网站栏目规划叫什么
  • 网站的结构类型建站公司前景
  • 凡科专属网站免费注册南宁网站建设牛易飞
  • 免费网站制作视频教程企业做网站多少钱
  • 企业网站建立平台网站不备案会怎样
  • 做网站一年大概的盈利龙岗区
  • 在家没事做建什么网站好成都网站设计建设推荐
  • 潮阳网站制作自己做的网站用在博客上
  • 成都哪家网站建设做得好浙江金圣建设有限公司网站
  • 百度推广手机网站检测做购物网站 推广