这章给大家介绍一下数据库里的视图这个功能。
视图: view
本质: 虚拟表。只存放 select 语句,不存放具体数据。
好处: 1. 可以将数据限制在某些行上。
2. 可以将数据限制在某些列上。
3. 可以简化操作
4. 可以实现安全机制
一.用图形界面创建视图。视图名为 view1
在视图上右击新建视图,然后把员工表,公司表,网址表三个表选准点击添加,完成后点击关闭。
视图的有关操作.八_第1张图片
视图的有关操作.八_第2张图片
. 用命令创建。视图名为 view2
命令创建完整格式。
Create view 视图名
with check ortion
As
Select 语句
with check option
1. with ehcryption 加密
2. with check option 满足条件
1. 创建视图用于显示女同志的信息。
如: create view view2
As
Select * from yuangong where 性别 = ‘女’
视图的有关操作.八_第3张图片
Select * from view2 进行查看。
视图的有关操作.八_第4张图片
测试:对视图进行基本操作。
1 Insert   2 deleted  3 update     4 select
例( 1 )插入一条记录。
insert into view2 values (9,' 小王 ',' ',20,' 北京 ',118,' 网站部 ',2000,0,100023, 2001-10-11 )
视图的有关操作.八_第5张图片
小王记录以插入。
视图的有关操作.八_第6张图片
Yuangong 表也有小王的记录。
视图的有关操作.八_第7张图片
delete 删除视图 view2 里的小王记录。
视图的有关操作.八_第8张图片
查看是否以删除小王记录,如下图所示以删除。
视图的有关操作.八_第9张图片
Yuangong 表中也没有小王的记录了。
视图的有关操作.八_第10张图片
2.只允许向view2视图中存放女同志信息。
语法为: alter 视图 视图名
As
Select * from 表名 where 条件】
With check option
视图的有关操作.八_第11张图片
测试一下,插入一条男同志信息,如下图插入失败。
视图的有关操作.八_第12张图片
3. 显示视图的源代码。
语法为: sp_helptext 视图名
视图的有关操作.八_第13张图片
4. 对源代码进行加密。
语法为: alter 视图 视图名
With encryption
As
Select * from 表名 where 条件】
视图的有关操作.八_第14张图片
测试,查看一下源代码,如下图所示源代码以加密。
视图的有关操作.八_第15张图片
只能加密不能解密。如想解密如下命令。
alter 视图 视图名
As
Select * from 表名 where 条件】
视图的有关操作.八_第16张图片
如下图所示又能看到源代码了。
视图的有关操作.八_第17张图片
5. 创建视图,用于显示三个表的正确数据。创建视图 view3.
语法为: create view view3
as
select 公司表 . 姓名 , 公司表 . 性别 , 年龄 , 公司名称 ,
籍贯 , 手机 , 网址 from 公司表 , 员工表 , 网址表 where
公司表 . 姓名 = 员工表 . 姓名 and 公司名称 = 公司名
视图的有关操作.八_第18张图片
打开视图进行查看,如下图所示成功。
视图的有关操作.八_第19张图片
不能向视图中插入数据的情况。
1.     如果基本表有多个,则不允许插入数据。
2.     如果视图中只包含部分字段,而其他字段不允许有空值,则插入失败。
3.     如果视图中含有字段组合,则不允许插入。
4.     如果视图中含有 distinct / group by 则不允许插入。
5.     如果违背 with check option 则不允许插入。