MYSQL的基本索引

MYSQL中的主要索引类型

  1.普通索引(NORMAL)

  2.唯一索引(UNIQUE)

  3.主键索引(PRIMARY)

  4.组合索引

  5.全文索引(FULLTEXT)

索引命名规范

  主键索引:pk_字段名【强制】-pk为PRIMARY KEY缩写

  唯一索引:uk_字段名-uk指的是UNIQUE KEY

  普通索引:idx_字段名-idx指的是index

查询表中索引

  show index from 表名;

  show KEYS from 表名;

1.普通索引

  ·创建普通索引

CREATE INDEX 索引名 ON 表名(字段名);
ALTER TABLE 表名 ADD INDEX 索引名 ON 表名(字段名);

  ·修改普通索引名称

ALTER TABLE 表名 RENAME INDEX 旧索引名 TO 新索引名;

  ·删除普通索引

DROP INDEX 索引名 ON 表名;

2.唯一索引

  ·创建唯一索引

CREATE UNIQUE INDEX 索引名 ON 表名;
ALTER TABLE 表名 ADD UNIQUE INDEX 索引名;

  ·修改唯一索引名称

ALTER TABLE 表名 RENAME INDEX 旧索引名 TO 新索引名;

  ·删除唯一索引

DROP INDEX 索引名 ON 表名;

3.主键索引

  ·字段不能为null,不能重复,只能创建一个主键索引

ALTER TABLE 表名 ADD PRIMARY KEY(字段名);

4.组合索引

  ·创建组合索引

CREATE INDEX 索引名 ON 表名(字段1,字段2...);

5.全文索引

  ·创建全文索引

ALTER  TABLE  `table_name`  ADD  FULLTEXT 索引名 ( `column` );

  ·删除全文索引

DROP INDEX 索引名 ON 表名;

6.前缀索引

  ·mysql中,前缀索引(Prefix Index)指的是对列值的开头一部分进行索引,使用前缀索引可以只对列值的一部分创建索引,并不是对整个列值进行索引。举个例子,假设有一个包含URL的列,但是你只对URL的一部分进行查询,这时可以创建一个前缀索引,而不是对整个列进行索引。

CREATE INDEX 索引名 ON 表名(字段名(长度));

7.外键索引

  ·使两表产生关联,创建外键索引的同时,会创建外键;创建外键的同时,也会创建外键索引

  ·创建索引

Alter table 表名 ADD CONSTRAINT 你为外键起的名字 FOREIGN KEY(你的外键字段名) REFERENCES 外表表名(对应的表的主键字段名);

  ·删除外键

Alter table 表名 Drop foreign key 你为外键起的名字;

  ·删除外键索引

Alter table 表名 Drop key 你为外键起的名字;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值