当前课程知识点:数据库系统原理与开发 > 第3章 数据库操作SQL语言 > 3.2 数据定义SQL语句 > 3.2.3数据定义SQL语句-3
同学们,大家好!
我是主讲教师陆鑫
本节继续学习数据库课程
第3.2小节 数据库索引创建、修改、删除SQL语句
本节学习目标如下:
1)掌握SQL语言的数据库索引创建语句
2)掌握SQL语言的数据库索引修改语句
3)掌握SQL语言的数据库索引删除语句
一、什么是索引
索引(Index)是一种按照关系表中指定列的取值顺序
组织元组数据存储的数据结构
使用它可以加快表中数据的查询访问
关系数据库的B-树索引结构示意图如下
在索引数据结构中
采用树结构的各个结点存储索引值及其指针
索引叶结点的指针指向数据库文件中的元组数据块地址
当建立关系表的索引结构后
可以实现快速的数据查询处理
二、索引作用及特点
索引作用
支持对数据库表中数据快速查找
其机理类似图书目录可以快速定位章节内容
索引主要有如下特点
索引优点:
提高数据检索速度
可快速连接关联表
减少分组和排序时间
索引开销:
创建和维护索引都需要较大开销
索引会占用额外存储空间
数据操纵因维护索引带来系统性能开销
下面学习数据库索引创建SQL语句
语句基本格式
CREATE INDEX 索引名 ON 表名(列名);
其中CREATE INDEX 为创建索引语句的关键词
为数据库创建索引的名称
SQL数据库也支持对表中的多列创建索引
索引创建实例
例如 在学生信息表Student中
为出生日期Birthday列创建索引
以便支持按出生日期快速查询学生信息
索引创建SQL语句如下
CREATE INDEX Birthday_Idx ON STUDENT (Birthday);
索引创建SQL执行
在pgAdmin4数据库管理工具中
输入创建数据库索引SQL语句
如下图界面所示
点取"运行"按钮后
当该SQL成功执行后
创建该索引对象
在数据库索引列表刷新后
出现birthday索引名称
在数据库索引使用中
若需要对索引属性进行修改
可通过执行数据库索引修改SQL语句实现处理
四、索引修改SQL语句
语句基本格式
ALTER INDEX ;
例如,索引名称修改语句格式如下:
ALTER INDEX RENAME TO ;
索引修改实例
例如 在学生信息表Student中
将原索引Birthday_Idx更名为Bday_Idx
其索引修改SQL语句如下:
ALTER INDEX Birthday_Idx RENAME TO Bday_Idx;
索引修改SQL执行
在pgAdmin4数据库管理工具中
输入修改数据库索引SQL语句
如下图界面所示
在编辑界面中输入修改索引语句
点取"运行"按钮
当该SQL成功执行后
该索引名被修改
在数据库索引列表刷新后
可看到修改后的索引对象bday_indx
在数据库索引使用中
若不再需要某索引
则可通过执行数据库索引删除SQL语句实现处理
索引删除SQL语句
语句基本格式
DROP INDEX ;
其中DROP INDEX 为删除索引语句的关键词
为被指定的索引名称
该语句执行后
将从表中删除该索引
索引删除实例
例如 在学生信息表Student中
删除bday_idx索引
其索引删除SQL语句如下:
DROP INDEX bday_idx;
3.索引删除SQL执行
在pgAdmin4数据库管理工具中
输入删除数据库索引SQL语句
如下图界面所示
输入SQL语句
点取"运行"按钮
当该SQL成功执行后
该索引被删除
在数据库索引列表刷新后
该索引不再存在
本节学习结束!
-1.1 数据库及其系统概念
-1.2 数据库技术发展
-1.3 数据库应用系统
-1.4 典型数据库管理系统
-1.5 PostgreSQL对象-关系数据库系统软件
-第1章 数据库系统概论--本章单元测试
-2.1 关系及其相关概念
-2.2 关系模型原理
-2.3 PostgreSQL数据库关系操作实践
-第2章 数据库关系模型--本章单元测试
-3.1 SQL语言概述
-3.2 数据定义SQL语句
-3.3 数据操纵SQL语句
-3.4 数据查询SQL语句
-3.5 数据控制SQL语句
-3.6 视图SQL语句
-3.7 PostgreSQL数据库SQL实践
-第3章 数据库操作SQL语言--本章单元测试
-4.1 数据库设计概述
-4.2 E-R模型方法
-4.3 数据库建模设计
-4.4 数据库规范化设计
-4.5 数据库设计模型SQL实现
-4.6 基于Power Designer的数据库设计建模实践
--4.6 基于Power Designer的数据库设计建模实践
-第4章 数据库设计与实现--本章单元测试
-5.1 数据库管理概述
-5.2 事务管理
--5.2 事务管理
-5.3 并发控制
-5.4 安全管理
-5.5 数据库备份与恢复
-5.6 PostgreSQL数据库管理项目实践
-第5章 数据库管理--本章单元测试
-6.1 数据库连接技术
-6.2 数据库存储过程
-6.3 数据库触发器
-6.4 数据库游标
-6.5 嵌入式SQL编程
-第6章 数据库应用编程--本章单元测试
-7.1 NoSQL数据库概述
-7.2 列存储数据库
-7.3 键值对数据库
-7.4 文档型数据库
-7.5 图形数据库
-7.6 HBase数据库项目实践
-第7章 NoSQL数据库技术--本章单元测试
-期末测试--期末测试