视图与索引

什么是视图?

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

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

 

视图的优点

  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 姓名='薛冰'

 

posted @ 2017-05-17 21:15  该☆隐  阅读(245)  评论(0编辑  收藏  举报