1) 理解索引的概念与类型。
2) 掌握创建、更改、删除索引的方法。
3) 掌握维护索引的方法。
- 在student表的student_name字段创建名为index_name的索引。
- 用ALTER TABLE语句为course表的course_name创建名为index_cname的(唯一性)索引。(add unique index)
- 删除student表上的index_name索引。
- 查看course表的结构的代码如下。
- 删除course表上的index_cname索引。
- 查看course表的结构的语句如下。
- 设计题:自己创建一个环境,测试索引对查询的重要性。(建议创建一个数据表,建立两个相同的字段,数据量要达到千行以上。一个建索引,一个不建索引。分别作为查询条件,比较查询效率,在navicat 的查询界面下方,系统会给出查询时间。)
- 索引越多越好吗?
一个表中如果有太多索引,不仅占用磁盘空间,而且会影响insert、delete和update等语句的性能,因为当更改表中数据的同时,索引也会进行调整和更新。
- 索引与约束有什么关系?
约束主要是用于保证业务逻辑操作数据库时数据的完整性,是逻辑层面的概念;索引则是将关键字数据以某种数据结构的方式存储到外存,用于提升数据的检索性能。
索引既有逻辑上的概念,更是一种物理存储方式,且事实存在、需要耗费一定的储存空间。