数据库第一套题目

数据库练习题

1、MySQL数据库测试题

人力资源管理系统(HR)

为了提高人资管理效率,预开发一套人力资源管理系统(HR),下面是对部门,员工,工资等级信息进行管理。数据库所支持的功能和存储的信息需至少包含如下几个方面:

部门信息表:DEPT
在这里插入图片描述
员工信息表:EMP
在这里插入图片描述
工资等级表:SALGRADE
在这里插入图片描述
请编写SQL语句完成以下的功能:

1) 创建数据库名称:emp_Sys。

创建数据表操作

  要求:

    1. 使用建库语句创建数据库  

    2.使用建表语句完成上面三张表的创建 

    3.请参考数据表的要求设置主外键及字段类型要求 (缺少主键扣分,外键扣分)

  每个表缺少主键,外键都要扣分

    4.需要提交建库,建表语句的代码,否则此项不得分

2) 插入数据

  数据要求如下:

  1. 部门表DEPT,数据如下:

在这里插入图片描述

2.员工表EMP,数据如下:
在这里插入图片描述
3. 工资等级表SALGRADE,数据如下:
在这里插入图片描述

要求如下:

    1.使用SQL语句完成三个表中数据插入,插入的数据项,请参阅题干素材 

    2.插入数据要求与提供的数据完全一致 

    3.上传代码时,要求上传所编写的SQL语句,否则不得分

3)查询雇员姓名,根据其服务年限,将最老的雇员排在最前面;

参考查询结果如下图所示:
在这里插入图片描述

4) 查询出在(任何年份的)2月受聘的所有雇员;

要求采用两种方式实现,每种实现方式【日期函数,字符串函数】得分值一半

参考查询结果如下图所示:
在这里插入图片描述
5)查询出所有的普通员工;
提示:在EMP表中mgr字段的取值代表上级领导的员工编号

参考查询结果如下图所示:
在这里插入图片描述
6)求出每个部门的平均工资,及它的等级;

参考查询结果如下图所示:
在这里插入图片描述

7)求平均薪水最高的部门的部门编号;

参考查询结果如下图所示:
在这里插入图片描述
8)给任职日期超过35年的人加薪10%;

要求:

  1. 使用jdbc.properties文件保存数据库连接的基本信息.

 2. 使用c3p0或druid数据库连接池来获取Connection对象

  3. 使用JDBC来实现员工加薪10%的操作,编写正确的SQL语句
  1. 使用PreparedStatement对象执行SQL语句

    1. 关闭数据库资源

    2. 包名,类名及代码要符合Java命名规范

    7.上传整个java工程

总体要求:

    1.上述操作直接使用MySQL工具编写SQL语句并测试成功

    2.提交代码时,必须包括每个题目的SQL语句

    3.没有SQL语句,直接得0分

插入数据

=插入数据===

部门表DEPT:
10, ‘ACCOUNTING’, ‘NEW YORK’
20, ‘RESEARCH’, ‘DALLAS’
30, ‘SALES’, ‘CHICAGO’
40, ‘OPERATIONS’, ‘BOSTON’

员工表EMP:
7369, ‘SMITH’, ‘CLERK’, 7902, ‘1980-12-17’, 1100, null, 20
7499, ‘ALLEN’, ‘SALESMAN’, 7698,‘1981-2-20’, 1760, 300, 30
7521, ‘WARD’, ‘SALESMAN’, 7698, ‘1981-02-22’, 1375, 500, 30
7566, ‘JONES’, ‘MANAGER’, 7839, ‘1981-04-02’, 3272, null, 20
7654, ‘MARTIN’, ‘SALESMAN’, 7698, ‘1981-09-28’, 1375, 1400, 30
7698, ‘BLAKE’, ‘MANAGER’, 7839, ‘1981-05-01’, 3135, null, 30
7782, ‘CLARK’, ‘MANAGER’, 7839, ‘1981-06-09’, 2695, null, 10
7788, ‘SCOTT’, ‘ANALYST’, 7566, ‘1987-04-19’, 3000, null, 20
7839, ‘KING’, ‘PRESIDENT’, null, ‘1981-11-17’, 5500, null, 10
7844, ‘TURNER’, ‘SALESMAN’, 7698, ‘1981-09-08’, 1650, 0, 30
7876, ‘ADAMS’, ‘CLERK’, 7788, ‘1987-05-23’, 1100, null, 20
7900, ‘JAMES’, ‘CLERK’, 7698, ‘1981-12-03’, 1045, null, 30
7902, ‘FORD’, ‘ANALYST’, 7566, ‘1981-12-03’, 3300, null, 20
7934, ‘MILLER’, ‘CLERK’, 7782, ‘1982-01-23’, 1430, null, 10

工资等级表SALGRADE:
1, 700, 1200
2, 1201, 1400
3, 1401, 2000
4, 2001, 3000
5, 3001, 9999

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值