Sql Server中的视图介绍
一):视图的定义
视图是由基于一个或多个表的一个查询所定义的虚拟表,它将查询的具体定义保存起来,视图不包含任何数据。
视图在操作上和数据表没有什么区别,但两者的差异是在其本质上的。数据表是实际存储记录的地方,然而视图并不是保存任何记录,它存储的实际上是查询语句。
相同的数据表,根据不同用户的不同需求,可以创建不同的视图。
二):视图的作用
1):筛选表中的行
2):防止未经许可的用户访问敏感数据
3):降低数据库的复杂程度
4):将多个物理数据抽象为一个逻辑数据库
三):创建视图实例
create view view_officeinfo–(视图名称)
as (select A.Name as 楼盘名称,B.A_Name as 城市,C.A_Name as 区域,D.A_Name as 街道 from dbo.Office_Info as A
inner join dbo.Base_Area as B on A.CityId=B.A_ID
inner join dbo.Base_Area as C on A.AreaId=C.A_ID
inner join dbo.Base_Area as D on A.StreetId=D.A_ID)–(sql语句)
as (select A.Name as 楼盘名称,B.A_Name as 城市,C.A_Name as 区域,D.A_Name as 街道 from dbo.Office_Info as A
inner join dbo.Base_Area as B on A.CityId=B.A_ID
inner join dbo.Base_Area as C on A.AreaId=C.A_ID
inner join dbo.Base_Area as D on A.StreetId=D.A_ID)–(sql语句)
select * from view_officeinfo(视图名称)
四):删除修改视图
删除:
if exists(select * from sys.objects where name=’view_officeinfo’)
drop view_officeinfo
修改:
alter view v_Student as sql语句