|
索引如同现实生活中字典的检索表或书本的目录,它可以帮助我们快速在海量的数据中找到需要的部分。在数据库操作中,我们只需要设置索引。索引设置后,当执行查询语句时,数据库引擎会自动使用索引。
当然,索引虽然是个好东西,也并非越多越好。例如:给一本只有几十页的书设置详细的检索目录。一则,可能正常翻阅查找比用索引查找更快。二则、以后每次增加内容时,还要修改检索目录,效率反而大大降低。
所以增加索引的原则是:
- 1、如果列数据大多相同、表数据只有几百行。不宜做索引。
- 2、频繁搜索的列、对数据排序的列、from前或WHERE子句中出现的列或在join子句中出现的列可以设为索引,这样提高查询速度。
复制代码 常用的索引分为:唯一索引、自然索引和主键索引三种。
全部索引类型我们也列出一下,大家感兴趣的话,可以自行深入
- (1)普通索引(Key Indexes)
- (2)唯一索引(Unique Indexes)
- (3)主键索引(Primary Key Indexes)
- (4)组合索引(Composite Index)
- (5)前缀索引( Prefix Indexes)
- (6)全文索引(Full-Text Indexes)
- (7)哈希索引(Hash Indexes)
- (8)空间索引(Spatial Indexes)
复制代码
其中主键索引是在我们给字段添加主键时自动添加的,即:主键就是主键索引。唯一索引在之前的讲解中也已详细说明过。下面我们主要来说一下自然索引的创建于删除操作。
自然索引也叫普通索引,它是最基本的索引,没什么限制,根据创建时机不同,主要有以下两种方式:
1、创建表时添加
- create table stu555 (`id` int primary key,`name` varchar(20),index ix_name(name));
复制代码 语句解释:
- 创建一张stu555表,给name字段添加自然索引。
复制代码 执行结果如下:
2、通过修改字段属性的方式添加
- alter table stu555 add index ix_name(name);
复制代码 3、删除索引
- drop index ix_name on stu555;
复制代码 执行结果如下:
ok,以上就是关于索引核心知识,大家亲自动手练习一下。
|
|