mysql之索引
Posted _小溢
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql之索引相关的知识,希望对你有一定的参考价值。
-- 有了表之后单独为这个表的字段追加一个普通索引的方法,为t1表的id字段创建一个普通索引,起名为idx_id create index idx_id on t1(id);
# 创建t1表,设置id字段为普通索引,可以用key关键字也可以用index都可以作为普通索引关键字 create table t1( id int not NULL, name varchar(50), key idx_id (id) -- 创建了一个普通索引,索引名字为idx_id,id字段创建为索引 ) -- 查看索引 show INDEX from t1;
-- 删除普通索引,删除t1表中的idx_id普通索引 drop index idx_id on t1;
(1)创建表时,创建唯一索引
-- 创建表的时候,就创建好唯一索引,unique关键字,指定id字段为唯一索引,起名为idx_id create table t2( id int not null, name VARCHAR(50), UNIQUE index idx_id (id) )
(2)为一 个表的字段追加唯一索引
-- 有了表后,为一一个表中的字段创建唯一索引,这里创建的是唯一组合索引,起名为idx_id create UNIQUE index idx_id on t1(id, name);
(3)删除唯一索引
-- 删除t1表中的idx_id索引,所有的索引删除方式,除了主键删除方式都是这个 drop index idx_id on t1;
3.主键索引(加速查找+唯一约束,不能为null)
一张表中只能有一个主键索引
(1)创建表时添加主键索引
-- 创建表的时候创建主键索引,主键索引不能指定名称,整个表只能有一个主键索引 create table t2( id int not null PRIMARY key, name VARCHAR(50) ) -- 创建表的时候,创建主键索引 create table t2( id int not null, name VARCHAR(50), PRIMARY KEY(id) )
(2)为一个表添加主键索引
-- 为t1表的id字段设置为主键索引 alter table t1 add PRIMARY KEY(id);
(3)删除主键索引
-- 删除t1表中的主键索引 alter table t1 drop PRIMARY KEY;
4.组合索引(加速查找)
组合主键索引、组合唯一索引、组合普通索引
创建索引时的字段不是1个是多个字段时就是组合索引了
delimiter$$:可以将sql语句中的语句结束符符号变成$符
delimiter;:将sql语句中的语句结束符符号变成为;
以上是关于mysql之索引的主要内容,如果未能解决你的问题,请参考以下文章