MySQL数据库练习集2

P120、121

题目

数据表employee

1. P120-1

创建视图emp_view1, 包含所有员工的号码、姓名和职位

1). 创建视图

CREATE VIEW emp_view1
AS SELECT employee.EmployeeID, employee.EName, employee.Title
FROM employee;

2). 查询刚才创建的视图

SHOW CREATE VIEW emp_view1;

SELECT * 
FROM emp_view1;


2. P120-2

从视图 emp_view1 中查询职位为"经理"的员工信息

SELECT *
FROM employee
WHERE Title = '经理';


3. P120-3

创建视图emp_view2,包含所有员工的姓名和基本收入

1). 创建视图

CREATE VIEW emp_view2
AS 
SELECT employee.EName, salary.BasicSalary  
FROM employee  
JOIN salary ON employee.employeeID = salary.employeeID;

2). 查询刚才创建的视图

SHOW CREATE VIEW emp_view2;

SELECT *
FROM emp_view2;


4. P120-4

从视图 emp_view2 中查询基本收入大于或等于5000元的员工姓名和收入

SELECT EName, BasicSalary  
FROM emp_view2  
WHERE BasicSalary >= 5000;


5. P120-5

修改视图emp_view2,将员工“王旭”的基本收入增加500元

UPDATE emp_view2  
SET BasicSalary = BasicSalary + 500  
WHERE EName = '王旭';


6. P121-6

修改视图 emp_view1 的定义,包含2010年后入职的员工号码、姓名和入职时间

并给视图加上 WITH CHECK OPTION

1). 修改视图

-- 删除旧的视图  
DROP VIEW IF EXISTS emp_view1;  
  
-- 创建新的视图并添加 WITH CHECK OPTION  
CREATE VIEW emp_view1  
AS  
SELECT EmployeeID, Ename, OnboardDate  
FROM employee  
WHERE OnboardDate > '2010-01-01'  
WITH CHECK OPTION;

2). 查询刚才创建的视图

SELECT * 
FROM emp_view2;


7. P121-7

向视图 emp_view1 中插入一条记录:(0019, 李浩, 2018-11-11)

员工蒋珂员工的员工号码重复,提前改一下

1). 插入记录

INSERT INTO emp_view1 (EmployeeID, Ename, OnboardDate)  
VALUES ('0019', '李浩', '2018-11-11');

2). 检查视图 emp_view1

SELECT * 
FROM emp_view1;


8. P121-8

删除视图 emp_view1 中姓名为“李敏”的员工

1). 先检查 emp_view1 中的所有员工

SELECT * 
FROM emp_view1;

2). 删除视图 emp_view1 中姓名为“李敏”的员工

DELETE FROM emp_view1  
WHERE Ename = '李敏';

3). 再次检查员工表

SELECT * 
FROM emp_view1;


9. P121-9

删除视图 emp_view1 和 emp_view2

1). 删除视图操作

DROP VIEW emp_view1;  
DROP VIEW emp_view2;

2). 检查是否删除成功

SELECT * 
FROM emp_view1;

SELECT * 
FROM emp_view2;

  • 5
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

雨空集

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值