【SQL Server】视图

视图的概念

  • 是存储在服务器端一个查询块,是一张虚拟表
  • 表示一张表的部分数据或多张表的综合数据
  • 其结构和数据是建立在对表的查询基础上。
  • 视图的使用,跟普通的表的查询使用完全一样

视图中不存放数据
数据存放在视图所引用的原始表中。
表视图的多样性
一个或多个原始表,根据不同用户的不同需求,可以创建不同的视图。
视图的用途
- 筛选表中的行
- 防止未经许可的用户访问敏感数据
- 降低数据库的复杂程度
- 将多个物理是巨款抽象为一个逻辑数据库

如何创建视图

使用T-SQL语句创建视图

CREATE VIEW view_Stuinfo
    AS
    <SELECT 语句>

使用T-SQL语句删除视图

if exists(select * from sysobjects where name ='View_StuInfo')
drop view View_StuInfo

使用T-SQL语句查看视图

SELECT * FROM view_StuInfo

场景示例

下面用以下几个表建立视图
ScoreList表
这里写图片描述
StudentClass表
这里写图片描述
Students表
这里写图片描述
创建视图并查询

use StudentManager
go 
-- 判断视图是否存在
if exists(select * from sysobjects where name ='View_StuScore')
drop view View_StuScore
go
--创建视图
create view View_StuScore
as 
    select Students.StudentId,StudentName,ClassName,C#=CSharp,SQLDB=SQLServerDB,
    ScoreSum=(CSharp+SQLServerDB)from Students
    inner join ScoreList on Students.StudentId =ScoreList.StudentId
    inner join StudentClass on Students.ClassId =StudentClass.ClassId
go
--使用视图查询
select * from View_StuScore

结果
这里写图片描述

猜你喜欢

转载自blog.csdn.net/Maybe_ch/article/details/82461468
今日推荐