mysql之索引
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了mysql之索引,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1411字,纯文字阅读大概需要3分钟。
内容图文
![mysql之索引](/upload/InfoBanner/zyjiaocheng/1058/8086714ea7234993a3d76412bbaa4c2a.jpg)
一、索引概述
1、定义:对数据库表的一列或多列的值进行排序的一种结构(Btree方式)
2、优点:加快数据检索速度
3、缺点:
1)占用物理存储空间
2)当对表中数据更新时,索引需要动态维护,降低数据维护速度
二、索引分类
1、普通(MUL) and 唯一(UNI)
1)使用规则:
1、可设置多个字段
2、普通索引 :字段值无约束,KEY标志为 MUL
3、唯一索引 :字段值不允许重复,但可为 NULL , KEY标志为 UNI
2)创建普通索引and唯一索引:
1、创建表时:
create table 表名(字段名 数据类型,字段名 数据类型,index(字段名),index(字段名),unique(字段名));
2、已有表中创建
create [unique] index 索引名 on 表名(字段名);
3)查看索引
1、desc 表名; --> KEY标志为:MUL 、UNI
2、show index from 表名\G;
4)删除索引
drop index 索引名 on 表名;
2、主键(PRI)and自增长(auto_increment)
1)使用规则:
1、只能有一个主键字段
2、所带约束 :不允许重复,且不能为NULL
3、KEY标志 :PRI
4、通常设置记录编号字段id,能唯一锁定一条记录
2)创建
1、创建表添加主键
create table student(xxx xxx)auto_increment=10000;##设置自增长起始值
如:create table student(
id int auto_increment,
name varchar(20),
primary key(id)
)charset=utf8,auto_increment=10000;##设置自增长起始值
2、已有表添加主键
alter table 表名 add primary key(id);
3、已有表操作自增长属性
1、已有表添加自增长属性
alter table 表名 modify id int auto_increment;
2、已有表重新指定起始值:
alter table 表名 auto_increment=20000;
3)删除
1、删除自增长属性(modify)
2、删除主键索引
3、外键(foreign key)
1、定义:让当前表字段的值在另一个表的范围内选择
2、语法:
3、使用规则:
1、主表、从表字段数据类型要一致
2、主表被参考字段 :KEY的一种,一般为主键
4、示例:
5、删除外键
alter table 表名 drop foreign key 外键名;
外键名 :show create table 表名;
6、级联动作
1)cascade :
?数据级联删除、更新(参考字段)
2)
restrict(默认) :
从表有相关联记录,不允许主表操作
3)set null :
主表删除、更新,从表相关联记录字段值为NULL
7、已有表添加外键
alter table 表名 add foreign key(参考字段) references 主表(被参考字段) on delete 级联动作 on update 级联动作
原文:https://www.cnblogs.com/yuxiangyang/p/11079153.html
内容总结
以上是互联网集市为您收集整理的mysql之索引全部内容,希望文章能够帮你解决mysql之索引所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。