1、Oracle员工工资管理系统大型数据库技术设计报告题 目: 员工工资管理系统数据库设计 学生姓名: 李龙 学 号: 0120 专业班级: 网工13101班 指导教师: 易明 设计时间: 2015年下学期 指导老师意见:签名:日期:评定成绩:1. 需求分析实现员工基本信息管理、工资信息管理、部门信息管理等功能,包括员工信息的添加、修改、删除及查询;工资信息的添加、修改、删除及查询等。2. 概念模型设计1. 员工信息E-R图(如图1所示)图 1员工信息E-R图2. 部门信息E-R图(如图2所示)图 2部门信息E-R图3. 工资实体局部E-R模型设计(如同3所示)图 3工资信息E-R图4. 职务信息
2、E-R图(如图4所示)图 4职务信息E-R图5. 考勤信息E-R图(如图5所示)图 5考勤信息E-R图6. 整体简洁E-R图(如图6所示)图 6整体简洁E-R图7. 用户信息E-R图(如图7所示)图 7用户信息E-R图3. 逻辑结构设计1. 关系模型设计1) 员工信息对应的关系模型员工(员工编号(主键),姓名,性别,联系电话,入厂日期,部门编号(外键),工资等级(外键)2) 部门信息对应的关系模型部门(部门编号(主键),部门名称,部门经理)3) 工资信息对应的关系模型工资(工资等级(主键),基本工资,年终奖)4) 职务信息对应的关系模型管理人员(职务编号(主键),联系电话,职位,工资级别(外键
3、),性别)5) 考勤信息对应的关系模型考勤(员工编号(主键一部分),日期(主键一部分),请假次数,迟到次数,缺勤次数)6) 用户信息对应的关系模型用户(用户名,密码,权限)2. 数据库表结构的设计1) 员工信息表结构2) 部门信息表结构3) 工资信息表结构4) 职务人员信息表结构5) 考勤信息表结构4. 数据库的实现1. 创建用户以管理员身份登录数据库,创建新用户create user lilong identified by 123;2. 为用户分配权限grant create session,resource,dba to lilong;3. 用新创建的用户登录数据库conn lilong
4、/1234. 创建表空间create tablespace testdatafile D:李龙课程设计test size 10mautoextend on next 1m maxsize 100mextent management local;5. 在表空间上创建员工信息表create table emp(empno number(4) primary key,ename varchar2(10) not null,sex char(2) not null,tel nvarchar2(11) ,hiredate date not null,deptno number(4) not null,r
5、ank char(2) not null)tablespace test6. 向员工信息表中插入记录insert into emp values(1,刘备,男,TO_DATE(2009-02-12,yyyy-mm-dd),10,三);insert into emp values(2,吕布,男,TO_DATE(2010-03-02,yyyy-mm-dd),10,六);insert into emp values(3,貂蝉,女,TO_DATE(2011-11-15,yyyy-mm-dd),10,五);insert into emp values(4,赵云,男,TO_DATE(2012-11-11,
6、yyyy-mm-dd),11,六);insert into emp values(5,诸葛亮,男,TO_DATE(2014-04-19,yyyy-mm-dd),11,四);insert into emp values(6,关羽,男,TO_DATE(2013-05-14,yyyy-mm-dd),11,五);insert into emp values(7,黄忠,男,TO_DATE(2014-02-12,yyyy-mm-dd),12,二);insert into emp values(8,鲁肃,男,TO_DATE(2014-02-13,yyyy-mm-dd),12,九);insert into e
7、mp values(9,周瑜,男,TO_DATE(2012-04-14,yyyy-mm-dd),12,十);insert into emp values(10,曹操,男,TO_DATE(2012-02-15,yyyy-mm-dd),13,六);insert into emp values(11,颜良,女,65,TO_DATE(2014-06-13,yyyy-mm-dd),13,七);insert into emp values(12,文丑,男,TO_DATE(2013-03-10,yyyy-mm-dd),13,八);7. 查询员工信息表中的记录8. 在表空间上创建部门信息表create tab
8、le dept(deptno number(4) primary key,dname varchar2(10) not null,manager varchar2(10) not null)tablespace test9. 向部门信息表中插入记录insert into dept(deptno,dname,manager,mtel)values(10,项目部,李龙,);insert into dept(deptno,dname,manager,mtel)values(11,人事部,李梦龙,);insert into dept(deptno,dname,manager,mtel)values(1
9、2,财务部,李欣龙,);insert into dept(deptno,dname,manager,mtel)values(13,IT部,李龙龙,);10. 查询部门信息表中的记录11. 创建工资信息表create table sal(rank char(2) primary key,basalary number(4) not null,bonus number(4) default 0)tablespace test12. 向工资信息表中插入记录insert into sal(rank,basalary,bonus)values(一,9800,3000);insert into sal(r
10、ank,basalary,bonus)values(二,9500,2500);insert into sal(rank,basalary,bonus)values(三,9200,2300);insert into sal(rank,basalary,bonus)values(四,9000,2200);insert into sal(rank,basalary,bonus)values(五,8000,2100);insert into sal(rank,basalary,bonus)values(六,7000,2000);insert into sal(rank,basalary,bonus)v
11、alues(七,6000,1800);insert into sal(rank,basalary,bonus)values(八,5000,1600);insert into sal(rank,basalary,bonus)values(九,4000,1400);insert into sal(rank,basalary,bonus)values(十,3000,1200);13. 查询工资信息表中的记录14. 创建职务信息表create table duty(dutyno number(4) primary key,dname varchar2(10) not null,job varchar2
12、(10) not null,tel nvarchar2(11) ,sex char(2) not null,rank char(2) )tablespace test 15. 向职务信息表中插入记录insert into duty(dutyno,duname,job,tel,sex,rank) values(101,李龙,总经理,男,一);insert into duty(dutyno,duname,job,tel,sex,rank) values(102,李小龙,副经理,男,二);insert into duty(dutyno,duname,job,tel,sex,rank) values(
13、103,李子龙,秘书,女,三);insert into duty(dutyno,duname,job,tel,sex,rank) values(104,李梦龙,总经理,女,一);insert into duty(dutyno,duname,job,tel,sex,rank) values(105,李泽龙,助理,女,四);insert into duty(dutyno,duname,job,tel,sex,rank) values(106,李云龙,秘书,女,五);insert into duty(dutyno,duname,job,tel,sex,rank) values(107,李欣龙,总经理
14、,女,二);insert into duty(dutyno,duname,job,tel,sex,rank) values(108,李好龙,副经理,男,三);insert into duty(dutyno,duname,job,tel,sex,rank) values(109,李坏龙,秘书,男,七);insert into duty(dutyno,duname,job,tel,sex,rank) values(110,李龙龙,总经理,男,一);insert into duty(dutyno,duname,job,tel,sex,rank) values(111,李章龙,秘书,女,八);insert into duty(dutyno,duname,job,tel,sex,rank) values(112,李宇龙,助理,女,九);16. 查询职务信息表中的数据17. 创建考勤信息表create table attend(day date ,empno number(4),
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1