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

嘉兴市住房和城乡建设局网站企业网站推广外包

嘉兴市住房和城乡建设局网站,企业网站推广外包,网站注册费用需要多钱,常州模板网站建设信息了解了主键索引的底层原理,主键索引其实就是根据主键字段建立相关的数据结构(B树),此后在使用主键字段作为条件查询时,会直接根据主键查找B树的叶子结点。除了主键索引外,普通索引和唯一键索引也是如此&…

了解了主键索引的底层原理,主键索引其实就是根据主键字段建立相关的数据结构(B+树),此后在使用主键字段作为条件查询时,会直接根据主键查找B+树的叶子结点。除了主键索引外,普通索引和唯一键索引也是如此,只不过普通索引要稍微绕一点,下面会具体介绍。


目录

一、索引分类

1、主键索引

2、普通索引

3、唯一索引

二、创建索引的原则

三、创建索引

1、主键索引(primary key)

2、普通索引(index)

3、唯一索引(unique)

四、查询索引

五、删除索引


一、索引分类

1、主键索引

略。主键索引的概念这里就不再赘述了,本质就是根据主键在B+树上查找叶子结点。

具体介绍参考:Mysql 索引(一)—— 主键索引的底层原理_仲夏夜之梦~的博客-CSDN博客

2、普通索引

使用普通索引的场景:某个字段存在重复数据

主键索引是根据主键字段建立相关数据结构(B+树),而普通索引则是根据某个非主键字段建立对应的数据结构,此后检索时直接根据该非主键字段查找 B+ 树的叶子结点。普通索引属于非聚簇索引,不同存储引擎对应的普通索引的结构会有所不同。

(1) MyISAM

MyISAM 普通索引的创建方式和主键索引是一样的,叶子结点不保存任何数据,只保存数据记录的地址。

(2) InnoDB

InnoDB 普通索引和主键索引不一样,InnoDB 主键索引中叶子结点保存的是数据记录;而 InnoDB 普通索引中叶子结点保存的是主键索引值,后续要使用该主键索引值到主键索引中获取完整记录,这种方式叫回表查询。

3、唯一索引

使用唯一索引的前提条件:某个字段的内容不存在重复数据

(唯一索引使用的数据结构跟主键索引、普通索引是一样的,不同之处在于作为检索条件的字段不存在重复数据

二、创建索引的原则

第一点,查询频繁的字段应该作为索引。因为索引的目的就是提高检索效率,如果某个字段被频繁使用,使用字段作为检索条件时就有必要提高检索效率。

第二点,更新频繁的字段不适合作为索引。索引的高效是以增删改的效率为代价的。

第三点,不作为检索条件的,不适合作为索引。如果该字段都不会作为条件用于检索,只会出现在结果中,那该字段不适合作为索引。

三、创建索引

1、主键索引(primary key)

主键索引的创建:索引字段必须是主键,主键索引的字段类型一般都是 int,创建主键索引的关键字是primary key

(1) 建表时创建

-- 方式一:
create table user1(id int primary key,     -- 在创建表的时候,直接在字段名后指定 primary keyname varchar(30)
);-- 方式二:
create table user1(id int,name varchar(30),primary key(id)        -- 在创建表的最后,指定某列或某几列为主键索引
);

(2) 建表后追加

create table user3(id int,name varchar(30)
);
alter table user3 add primary key(id);    -- 创建表以后再添加主键

2、普通索引(index)

普通索引的创建:索引字段的数据允许重复。使用的关键字为 index

(1) 建表时创建

create table user(id int primary key,name varchar(20),email varchar(30),index(name)         --在表的定义最后,指定某列为索引
);

(2) 建表后追加

create table user(id int primary key,name varchar(20),email varchar(30)
);
alter table user add index(name);     --创建完表以后指定某列为普通索引

3、唯一索引(unique)

唯一索引的创建:要求检索字段不能存在重复数据。使用的关键字为 unique。唯一索引的创建方式和普通索引完全一样,只需要把 index 关键字替换成 unique 关键字即可。

四、查询索引

查询某个表中的所有索引以及对应的字段

show index from 表名 [\G];

五、删除索引

(1) 删除主键索引

 alter table 表名 drop primary key;

注意:如果该主键已经被设为了自增(auto_increment),则该主键索引无法被删除。

(2) 删除其他索引(普通索引、唯一索引)

drop index 索引字段名 on 表名;

http://www.hengruixuexiao.com/news/18285.html

相关文章:

  • 网站站建设网络营销的优势和劣势
  • 违法网站做网站的人会受罚嘛谷歌搜索引擎镜像
  • 安徽省工程建设信息网官方网站相城seo网站优化软件
  • 长春网站建设加q479185700疫情最新消息
  • 发卡平台网站建设关键词工具
  • 网站建设7年轻人不要做网络销售
  • 网站建设高端网页设计东莞优化排名公司
  • 做网站必须学php吗广州seo网站推广平台
  • 创意性网站中山网站建设公司
  • 网站制作与美育融合seo优化方案总结
  • 如何制作电脑公司网站北京网站优化常识
  • JSP高级动态网站开发期末试卷网络营销公司热线电话
  • 上海手机网站制作公司产品设计公司
  • 兰州论坛网站建设百度托管运营哪家好
  • 最佳外贸英文网站模板最新新闻热点事件及评论
  • 来个网站吧好人一生平安2021今天新闻最新消息
  • 有谁知道教做空间的网站啊seo诊断书
  • 大型定制网站最贵建设多少钱最近一周热点新闻
  • 怎么在电脑上做网站郑州网站公司哪家好
  • 如何使用网站模板建设网站网上推
  • 房地产网站建设哪家好网站服务器速度对seo有什么影响
  • 如何攻击Wordpress站点百度帐号登录入口
  • wordpress pirobox独立站seo建站系统
  • 网站建设海外推广 香港百度贴吧网页版登录
  • 网站建设 贸易公司想做网络推广贵不
  • 上海做网站好的公司有哪些百度推广怎么操作流程
  • 深圳市住房和建设局工程交易中心seo营销专员
  • 做电商那个平台最好seo是怎么优化
  • 网站开发php工程师网络营销有哪些推广方法
  • wordpress如果有图片显示图片seo优化关键词排名优化