《MySQL数据库》2-5 索引教学材料_第1页
《MySQL数据库》2-5 索引教学材料_第2页
《MySQL数据库》2-5 索引教学材料_第3页
《MySQL数据库》2-5 索引教学材料_第4页
《MySQL数据库》2-5 索引教学材料_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第2章问题引入案例:从1万条学生信息中,查询李三的详细信息。索引01索引简介02创建索引03删除索引第2章01索引简介索引:是一种特殊的数据结构,由数据表中的一列或多列组合而成,可以用来快速查询数据表中有某一特定值的记录。第2章01索引简介优点:可以大大加快数据的查询速度。缺点: 1.创建和维护索引要耗费时间。 2.索引需要占磁盘空间。第2章01索引简介索引分类:1.普通索引2.唯一索引3.单列索引4.组合索引5.全文索引第2章02创建索引一、创建表的时候创建索引其语法格式为:CREATETABLE表名(字段名数据类型[(长度)]

[完整性约束条件],...[UNIQUE|FULLTEXT]INDEX|KEY[索引名](字段名1[(长度)],...字段名n[(长度)])[ASC|DESC]));第2章02创建索引参数介绍:UNIQUE、FULLTEXT为可选参数,分别表示唯一索引或全文索引;INDEX与KEY,两者作用相同,用来指定创建索引;索引名:创建索引的名称,为可选参数;

字段名n:为需要创建索引的字段列,该列必须从数据表中定义的多个列中选择;ASC或DESC:指升序或降序。第2章02创建索引查看索引:SHOWINDEXFROM表名;或SHOWKEYSFROM表名;【案例1】创建学生表student,同时在它的sname字段上创建普通索引第2章02

创建索引USEstu;DROPTABLEstudent;CREATETABLEstudent(sidCHAR(4),snameVARCHAR(20),sexENUM('男','女'),birthDATE,gradeYEAR(4),departmentENUM('信息工程系','化学工程系','机械电子系'),addrVARCHAR(50),INDEX(sname));SHOWINDEXFROMstudent;第2章02

创建索引【案例2】创建课程表course,同时在它的cname字段上创建唯一索引,索引名为unique_cname第2章02

创建索引DROPTABLEcourse;CREATETABLEcourse( cnoCHAR(2), cnameVARCHAR(20)NOTNULL, STARTINT, creditFLOAT, UNIQUEINDEXunique_cname(cname));SHOWINDEXFROMcourse;第2章02

创建索引【案例3】创建学生表student,同时在它的sid、sname、sex字段上创建组合索引,索引名为multi_index第2章02

创建索引DROPTABLEstudent;CREATETABLEstudent(sidCHAR(4),snameVARCHAR(20),sexENUM('男','女'),birthDATE,gradeYEAR(4),departmentENUM('信息工程系','化学工程系','机械电子系'),addrVARCHAR(50),INDEXmulti_index(sid,sname,sex));SHOWINDEXFROMstudent;第2章02

创建索引【案例4】创建学生表student,同时在它的addr字段上创建全文索引,索引名为addr_index第2章02

创建索引DROPTABLEstudent;CREATETABLEstudent(sidCHAR(4),snameVARCHAR(20),sexENUM('男','女'),birthDATE,gradeYEAR(4),departmentENUM('信息工程系','化学工程系','机械电子系'),addrVARCHAR(50),FULLTEXTINDEXaddr_index(addr))ENGINE=MYISAM;SHOWINDEXFROMstudent;第2章02

创建索引二、使用CREATEINDEX语句创建索引其语法格式为:create[UNIQUE|FULLTEXT]INDEX索引名on表名(字段名[(长度)][ASC|DESC])第2章02

创建索引【案例5】先创建课程表course,然后在它的cname字段上创建唯一索引,索引名为unique_cname第2章02

创建索引DROPTABLEcourse;CREATETABLEcourse( cnoCHAR(2), cnameVARCHAR(20)NOTNULL, STARTINT, creditFLOAT);CREATEUNIQUEINDEXunique_cnameONcourse(cname);SHOWINDEXFROMcourse;第2章02

创建索引【案例6】先创建成绩表score,然后在它的sid、cno、result字段上创建组合索引,索引名为multi_index第2章02

创建索引DROPTABLEscore;CREATETABLEscore( scidINT, sidCHAR(4), cnoCHAR(2), resultFLOAT);CREATEINDEXmulti_indexONscore(sid,cno,result); SHOWINDEXFROMscore;第2章02

创建索引三、使用ALTERTABLE语句创建索引其语法格式为:ALTERTABLE表名ADD[UNIQUE|FULLTEXT]INDEX[索引名](字段名[(长度)][ASC|DESC])第2章02

创建索引【案例7】先创建成绩表score,然后,使用ALTERTABLE语句,在它的sid、cno、result字段上创建组合索引,索引名为multi_index第2章02

创建索引DROPTABLEscore;CREATETABLEscore( scidINT, sidCHAR(4), cnoCHAR(2), resultFLOAT);ALTERTABLEscoreADDINDEXmulti_index(sid,cno,result);SHOWINDEXFROMscore;第2章02

创建索引一、使用DROPINDEX语句删除索引语法格式:DROPINDEX索引名ON表名;第2章03

删除索引【案例8】使用DROPINDEX语句,删除score表的索引multi_indexDROPINDEXmulti_indexONscore;SHOWINDEXFROMscore;第2章02

创建索引二、使用ALTERTABLE语句删除索引ALTERTABLE表名DROPINDEX索引名第2章03

删除索引【案例9】使用ALTERTABLE语句,删除course表的索引unique_cnameA

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论