SQL Server 实验六索引和视图

it2023-09-18  74

本实验基于StoreSales数据库中的各个表,用T-SQL命令完成下面要求。

一、索引的使用

1、对Employee中的姓名列建立非聚集索引Employee_name。

CREATE INDEX Employee_name ON Employee(EmplName)

2、对SalesOrder中的订单号和员工号建立唯一聚集索引。

CREATE UNIQUE CLUSTERED INDEX abc ON dbo.SalesOrder(OrderID,EmplID)

3、删除Employee中的索引Employee_name。

DROP INDEX dbo.Employee.Employee_name

二、创建视图

1、创建StoreSales数据库上的视图Emp_view,视图包含Employee表的全部列。

CREATE VIEW Emp_view AS SELECT * FROM Employee

2、创建StoreSales数据库上的视图EmpDep_view,视图包含员工号、员工姓名、部门号和部门名称。

CREATE VIEW EmpDep_view AS SELECT EmplID,EmplName,Employee.DeptID,DeptName FROM Employee,Department WHERE Employee.DeptID =Department.DeptID

三、查询视图

1、从视图Emp_view查询年龄大于40的员工的员工号、姓名和年龄。

SELECT EmplID,EmplName,2020-year(birthday) as'Age' FROM dbo.Emp_view WHERE 2020-year(birthday)>40

2、从视图EmpDep_view中查询姓名为刘强的员工号及所在部门的名称。

SELECT EmplID,DeptName FROM EmpDep_view WHERE EmplName='刘强'

四、更新视图

1、向视图Emp_view中插入一行数据“E007,张三,男,1996-3-6,5000,D002”。

INSERT INTO Emp_view VALUES('E007','张三','男','1996-3-6','地址','5000','D002')

2、修改视图Emp_view,将员工张三的工资改为6000,部门号改为D001。

UPDATE Emp_view SET Wages=6000,DeptID='D001' WHERE EmplName='张三'

3、删除视图Emp_view中张三这名员工的相关信息。

DELETE FROM Emp_view WHERE EmplName='张三'

五、删除视图

删除视图Emp_view和EmpDep_view

DROP VIEW Emp_view,EmpDep_view
最新回复(0)