数据库原理与应用实.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库原理与应用实验 2-3 实验 2.3 视图的定义和操作 一、实验目的: 理解视图的概念,掌握视图的使用方法。 二、实验过程 1. 对应 HRM 数据库,参照前面实验中完成的查询,按如下要求自行设计视图: 1)基于单个表按投影操作定义视图。 举例:定义一个视图用以查看所有员工的编号、 姓名和出生日期。 CREATE VIEW Departments_View ASSELECT* FROMDepartments 2)基于单个表按选择操作定义视图。 举例:定义一个满足 sex=’true ’的员工的所有信息的视图。 CREATE VIEW Employee_view AS SELECT * FROM Employee WHERE Sex = TRUE 3)基于单个表按选择和投影操作定义视图。 举 例:定义一个视图用以查看部门号码为‘ 2’的所有员工的姓名、电话和邮件地址。 CREATE VIEW Employee_view1 AS SELECT Name, PhoneNumber, EmailAddress FROM Employee WHERE DepartmentID = 2 4)基于多个表根据连接操作定义视图。 举例:定义一个视图用以查看所有员工的姓名、 部门名及工资。 CREATE VIEW Employee_Departments_Salary_View(Name, Department, Salary) AS SELECT a.Name,b.DepartmentName,c.Income-c.OutCome FROM Employee a, Departments b, Salary c WHERE a.EmployeeID = c.EmployeeID AND a.DepartmentID = b.DepartmentID; 5)基于多个表根据嵌套查询定义视图。 举例: 定义一个比所有财务部的雇员工资都高的雇员的信息的视图 CREATE VIEW Employee_Salary_View AS SELECT * FROM Employee WHERE EmployeeID IN( SELECT EmployeeID FROM Salary WHERE Income ALL( SELECT Income FROM Salary WHERE EmployeeID IN( SELECT EmployeeID FROM Employee WHERE DepartmentID = ( SELECT DepartmentID FROMDepartments WHERE DepartmentName = N 财务部 ) ) ) ) 6)定义含有虚字段(即基本表中原本不存在的字段)的视图。 举例:定义一个视图用以查看所有雇员的编号、姓名、年龄 CREATE VIEW E_View(EmployeeID, Name, Age) AS SELECT EmployeeID, Name, DATEDIFF(YEAR, Birthday, GETDATE()) FROM Employee 2. 分别在定义的视图上进行查询、插入、更新 和删除操作,分情况(查询、更新)讨论哪 些 操作可以成功完成, 哪些不能成功完成, 并分析 原因。 查询: 插入: insert into Departments_View values(4,N 销售部 ,N 销售部 ) 更新: update Departments_View set Note=N 无 删除: delete from Departments_View where DepartmentID = 4

文档评论(0)

xiaozu + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档