SQL从入门到进阶跑 课件 第7、8章 提高查询效率的制胜法宝——索引; 现特定功能的SQL语句集——存储过程的增删及调用.pptx

SQL从入门到进阶跑 课件 第7、8章 提高查询效率的制胜法宝——索引; 现特定功能的SQL语句集——存储过程的增删及调用.pptx

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

第7章

提高查询效率的制胜法宝——索引

/07

7.1索引的功能与类型介绍

3

当MySQL数据库中表的数据量非常大的时候,数据的检索速度也会降低。此时,索引的建立就会变得非常有用,可以大大提高检索速度。

如果从索引包含的字段个数来看,可分为单列索引和组合索引。

单列索引指的是索引仅包含一个字段

组合索引则可以包含多个字段

不管是单列索引还是组合索引,一张表中均可以创建多个(除主键索引)。

如果从索引的类型来看,可分为普通索引、唯一索引、主键索引、联合索引和全文索引等。

数据表中添加索引的方式通常是针对表中某列添加索引,查找数据时可以直接根据该列上的索引找到对应记录行的位置,从而快捷地查找到数据。

7.2常见索引类型的创建

4

普通索引是一种没有任何约束的索引,它对表中字段的值不作任何限制,不管字段的值是否存在重复或是否存在缺失(即NULL)都无关紧要,因此,它是使用最频繁的一种索引。

该索引的创建方式和约束一样,有两种创建方式:分别是表创建时设置、表创建后修改时设置。一张表中可以创建多个普通索引,两种创建索引的方法如下:

7.2.1普通索引

7.2常见索引类型的创建

5

7.2.2唯一索引

唯一索引对字段或字段组合是有约束的,即必须确保字段或字段组合的每一个观测值都是唯一的,且不存在重复记录。

单张表中可以创建多个唯一索引,基于表中的字段或字段组合创建唯一索引的语法如下所示:

7.2常见索引类型的创建

6

7.2.3主键索引

主键索引和唯一索引都要求字段或字段组合的唯一性,但主键索引的要求更为严格一些,它要求字段或字段组合中的值既不存在重复,也不包含缺失值NULL。此外,与普通索引和唯一索引相比,表中仅能够包含一个主键索引,关于主键索引的创建语法如下所示:

7.3常见索引类型的删除

7

示例:以银行理财明细表bank_finance_details为例,分别执行普通索引、唯一索引、主键索引的删除操作。

当数据表中的索引不再需要时,可以执行删除操作。索引的删除的方式有两种,删除语法如下所示:

7.4关于索引类型的注意事项

8

7.4.1是否合适建立索引

7.4关于索引类型的注意事项

9

7.4.2如何正确使用索引

第8章

实现特定功能的SQL语句集——存储过程的增删及调用

/08

8.1存储过程的创建

12

存储过程的创建就是将准备好的SQL脚本通过固定语法封装起来,然后给该段存储过程进行命名,后期可以直接调用该名称来运行SQL脚本。存储过程的创建使用的是CREATEPROCEDURE关键字,存储过程的创建需要注意以下几点:

8.1存储过程的创建

13

存储过程的创建语法如下所示:

示例:以旅客注册信息表tourist_userinfo为例,创建一个存储过程,该存储过程含输入参数age_min、age_max、输出参数para_age_count,执行返回的结果为年龄区间对应的行数。

8.2存储过程的删除

14

示例:将创建的存储过程tourist_userinfo_count删除。

当MySQL数据库中的存储过程不再需要使用时,可以通过关键字DROPPROCEDURE来进行删除,语法如下所示:

8.3存储过程的调用

15

示例1:调用存储过程tourist_userinfo_female。

存储过程的调用是通过关键字CALL来执行。调用指定的存储过程后,系统将按顺序执行该存储过程中关键字BEGIN和AND之间SQL语句,然后返回指定的结果,语法如下所示:

示例2:调用存储过程tourist_userinfo_age_count,指定输入参数age_min为20、输入参数age_max为26、输出参数para_age_count为@para_age_count,并查询@para_age_count的结果。

您可能关注的文档

文档评论(0)

xiaobao + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档