视图与索引

Posted 该☆隐

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了视图与索引相关的知识,希望对你有一定的参考价值。

什么是视图?

  视图是一种常用的数据库对象,是一种虚拟表

   在视图中被查询的表称为基表

 

视图的优点

  1. 提高数据操作效率
  2. 简化操作
  3. 定制数据
  4. 合并分割数据
  5. 安全性

创建视图

  

create  view  视图名(列名....)
[with  encryption]
as
select  语句
[with check  option]


--with check  option  :不满足视图的定义不允许插入

例题

--1.创建了一个“V2”的视图,用于查询信息安全技术专业的女生的学生信息,包括学号、姓名、性别、出生日期、专业名、所在系。(加限制条件,不是视图定义的数据不能插入成功)。


create view  V2
As
select 学号,姓名,性别,出生日期,专业名,所在系
from  XSQK 
where 专业名=信息安全技术 and 性别=
with check option 
go

 

--2.向v2中分别添加3行数据,观察是否能够添加成功,为什么?
--  ‘2012130206’,‘李好’,‘男’,‘1996-04-22’,‘网络工程’,‘计算机应用’
--  ‘2012130106’,‘周星星’,‘女’,‘1986-07-08’,‘信息安全’,‘计算机应用’
--  ‘2012130107’,‘周全’,‘男’,‘1986-07-08’,‘信息安全’,‘计算机应用’


insert into v2
values(2012130206,李好,,1996-04-22,网络工程,计算机应用)
--不能运行成功,与设置的专业名不同,不满足视图的定义
 insert into v2
values(2012130106,周星星,,1986-07-08,信息安全技术,计算机应用)
--能运行成功
 insert into v2
values( 2012130107,周全,,1986-07-08,信息安全技术,计算机应用)
--不能运行成功,性别不符合条件
--3更新视图v2数据  将学号为2012130102的学生姓名改为自己的姓名。


update v2
 set 姓名=xxx
 where 学号=2012130102
--4通过视图v2删除数据    删除姓名是薛冰的学生信息。



 delete from V2 where 姓名=薛冰

 

以上是关于视图与索引的主要内容,如果未能解决你的问题,请参考以下文章

切换片段时如何维护子视图的状态?

片段中的视频视图与另一个片段重叠

如何使用 jquery 从 asp.net 视图模型中动态删除行而不删除集合中的其余下一个对象

片段中的按钮自定义视图

多个视图与多个片段

带有片段的标题栏与列表视图重叠