--视图

--没有参加考试的学生姓名,学号,年龄,籍贯

select stuName,stuNo from Student left join score

on score.stuId=student.id

where score.id is null

--创建视图的语法

create view V_studentInfo

as --必须有as,后边不能跟括号,也不能有begin...end

select stuName,stuNo,datediff(year,birthday,getdate()),

city

 from Student left join score

on score.stuId=student.id

where score.id is null

 

select * from V_studentInfo

 

--注意:1.创建视图时,每一列必须有列名

--      2.视图的作用就是为了简化查询

--   3.视图是不存储数据的。数据只能存储在基表里

--     视图只是对一个查询语句的封装

--   4.在创建视图是,不允许使用order by,除非同时使用了top

--   5.不允许通过视图删除记录

--   6.可以通过使用insert,update记录,但是只能操作一张基表的数据

--     如果同时操作多张基表的数据是不允许的

delete V_studentInfo where stuNo='174804011' / /×

insert into V_studentInfo values(N'菲菲','174804011',N'河南')

insert into V_studentInfo(stuName,stuNo) values(N'菲菲','174804011')