MySQL表设计之索引

6 篇文章 0 订阅
一、MySQL中的索引分类:

MySQL目前主要有以下几种索引类型:

1.普通索引(index)
2.唯一索引(unique)
3.主键索引(primary key)
4.组合索引
5.全文索引 (fullText)

二、多个单列索引和联合索引的区别

https://blog.csdn.net/Abysscarry/article/details/80792876

三、索引命令

我们知道,有时候系统部署使用了第三方云服务,可能也是购买了云数据库。云数据库的访问不像在内网(局域网)开发环境一样方便,通过navicat等可视化管理工具就可以轻松进行数据或索引的查询、修改。云服务器一般都是通过堡垒机登录,然后再访问云数据库,一般都是通过命令实现登录。所以,掌握sql命令至关重要。

mysql索引的命令操作:

  1. 查询表索引

    show index from table_name;
    
  2. 新增表索引

	普通索引:  create index index_name on table_name (column_list) ;
	唯一索引: create unique index index_name on table_name (column_list) ;
  1. 删除表索引
	drop index index_name on table_name ;
	alter table table_name drop index index_name ;
  1. 修改表索引
	创建(单个)普通索引: alter table table_name add index index_name (column_list) ;
	创建(多个)普通索引:alter table table_name add index index_name1(column_list1),add index index_name2(column_list2);
	创建唯一索引: alter table table_name add unique unique_name (column_list) ;
	创建pk:      alter table table_name add primary key (column_list) ;

	删除普通索引: alter table table_name drop index index_name ;
	删除pk:      alter table table_name drop primary key ;

说明:

table_name:索引所在的表名
column_list: 指出对哪些列进行索引,多列时各列之间用逗号分隔。
index_name:索引名可选,缺省时,MySQL将根据第一个索引列赋一个名称。

alter table允许在单个语句中更改多个表索引,因此可以同时创建多个索引。

	alter table `tbl_feeds`  
	add index `ix_feeds_username` (`username`) ,  
	add index `ix_feeds_userid` (`userid`) ,  
	add index `ix_feeds_content` (`content`) ,  
	add index `ix_feeds_score` (`score`) ,  
	add index `ix_feeds_weight` (`weight`) ;  
四、字段变更与索引

如果从表中删除某列,则索引会受影响。

  • 对于多列组合的索引,如果删除其中的某列,则该列也会从索引中删除。
  • 如果删除组成索引的所有列,则整个索引将被删除。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值