操作索引和视图

我们在做学生信息管理系统的时候都有见过视图和索引,但当时我们只是对它们停留在了一个表层的认识,并不知道他们具体还可以用来做什么。通过看数据库视频我对它们有了进一步的看法。

视图:选择性的查看具体的值或一些列,并保存成新的对象。
1.创建视图
语法格式:

 create view view_name(view_column_name)
As query_expression
[with check option]

例如这里写图片描述
2.修改和删除视图
修改视图:

Alter view<view _name>[column name list>]
As 
<select statement>
[with check option]

这里写图片描述每次我看视频中都是最后输入的SELECT部分,所以大家在编辑的时候应该注意先对要查询的信息进行编辑
删除视图:

dropview v_studentinfo

通过视图修改数据:
注意事项
select列表含有distinct
Select 列表含有表达式
在from子句中引用多个表,如计算列、函数等。
引用不可更新视图
Group by 或having子句
例:在视图中插入一条数据
这里写图片描述

索引
单独的物理的数据库结构,存储具体数据的位置。一旦创建完成,将由数据库自动管理和维护。

优点:

保证数据记录的唯一性。
加快数据检索速度
加快表与表之间的连接速度
在使用order by 和group by子句检索时可以减少查询分组和排序的时间。
索引还可以分为聚集索引和非聚集索引
聚集索引确定表中数据的物理顺序。类似于电话簿,按姓氏排序。一个表只能包含一个聚集索引,但可包含多个列。对经常要搜索范围值的列特别有效。
非聚集索引数据存储在一个位置,索引存储在另一个位置。
两者区别:1、数据行不按非聚集索引建的顺序排序和存储
2、非聚集索引的叶层不包含数据页,相反,叶节点包含索引行

**创建索引:**一个表可以有一个聚集索引和多个非聚集索引。创建多个索引的时候使用非聚集索引,可以对当前的列进行精确查询的时候速度非常快,但是同时降低了插入、修改、删除的操作效率。所以创建的时候需要考虑我们的数据表是经常执行那种操作。
如果经常用于查询,数据不经常更新,就可以多创建一些非聚集索引。如果,空间有限、数据经常需要变动,避免在数据表中创建索引,因为数据的变动需要更新到索引页,所以频繁的数据变动会增加索引页的更改,也会增加系统的使用率。

语法格式:

create
[unique][clustered][nonclustered]
 index index_name
 on
 table_name|view_name

这里写图片描述
管理索引
就是对索引进行查看、删除这两项操作。
如果表经常要进行插入和更新,我们就需要尽量少的保持索引量。
删除:
这里写图片描述
如果哪里有什么不对的,或者是还有一些地方需要改进,欢迎大家来和我沟通、探讨,期待大家的指导与建议。

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值