SQL server 实验4.2 视图的使用

书目:SQL sever 实用教程(第五版)(SQL server 2008版)
本实验使用数据表为实验3中创建的employees、departments、salary表

d918760d9a4946fc899ff77555b4fcdd.jpg

 

1.创建视图


(1)创建YGGL数据库上的视图DS_VIEW,视图包含Deparments表的全部列。

778b8fbb93d842738ea4a4fd2f3414c4.png

 


(2)创建YGGL数据库上的视图Employees_view,视图包含员工编号、姓名喝实际收入三列93a30b15ba8d4f66a806c586d683e71a.jpg

 

  •  在创建视图时selset语句有哪些限制?

①定义视图的用户必须对所参照的表或视图有查询(即可执行select语句)权限

②不能使用compute或compute by子句

③不能使用order by子句

④不能使用INTO子句

⑤不能在临时表或表变量上创建视图

  • 在创建视图时有哪些注意点?

①要对某些列取别名,并保证列名的唯一(具有相同的列名的表,在创建视图的时候,需要使用别名,表名.列名 也是不可以的)当我们在通过新建视图来创建视图的话,具有相同的列名的表,系统会自动的添加别名.所以不会报错,但是通过SQL语句创建的时候,要注意添加别名

②在使用函数或算数表达式的时候 需要使用别名,否则创建视图或者函数的时候会失败!

③定义视图的时候,注意不要使用关键字

④不能在视图定义中指定ORDER BY ,除非定义中包含Top或For Xml 说明

  • 创建视图,包含员工编号、姓名、所在部门名称和实际收入这几列33e85a5d4e644a94ae8675ad23a80359.jpg

 


 

2.查询视图


(1)从视图DS_VIEW中查询出部门编号为“3”都部门名称ed5510a720d34d8a9a692e834a1d36ae.png

 (2)从视图Employees_view中查询出姓名为“王林”的员工的实际收入

98af8f133b88485580124671b2f0771b.png

  •  若视图关联了某表中的所有字段,而此时该表中添加了新的字段,视图中能否查询到该字段?

不能,必须重新创建视图才可以查询到


 

3.更新视图


(1)向视图DS_VIEW中插入一行数据”6,广告部,广告业务”

5783778c170e422492cd0569d8705cd2.png

d7fe223ff5af4d3f90215053db246bc0.png 

 (2)修改视图DS_VIEW,将部门编号为“5”的部门名称修改为“生产车间”

b49f8c431c2b4e91a703c3d6a7c4c664.png

bc22426dd59e43169580cac25aabeae6.png 

fbe7f5e207ee4116a67c8a6a8c4ef96b.png 

 (3)将视图Employees_view中员工编号为“000001”的员工的姓名修改为“王浩”

7a2a311a4b1841fd9a4e29af52454670.png

 (4)删除视图DS_VIEW中部门编号为“1”的一行数据

9fd85401ce7848df880d7758d5ed11b8.png

 


 

4.删除视图


删除视图DS_VIEW

2349b9dc61a64127b8386d59fa1813ff.png

 


 

 

5.在界面工具中操作视图


(1)创建视图:启动“SQL server Management Stdio”,在“对象资源管理器”中展开“数据库”→“YGGL”,选择其中的“视图”,右击鼠标,在弹出的快捷菜单上选择“新建视图”菜单项。在随后出现的“添加表”窗口中,添加所需关联的基本表。在视图窗口的关系窗口显示了基本表的全部列信息,根据需要在窗口中选择创建视图所需的字段,完成后单机“保存”按钮保存。

0af3966b1a514b45b1db379d51e1c8c4.jpg

575710e1acc344dc9b7186abffe93f0d.png 

 (2)查询视图,新建一个查询,输入T-SQL查询命令即可像查询表一样查询视图

(3)删除视图:展开“YGGL 数据库”→“视图”,选择要删除的视图,右击并选择“删除”菜单项,确认即可

a859a531d0954b3dba893dc7a8d587cb.jpg

 


 

以上内容仅供参考

  • 8
    点赞
  • 53
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值