factory数据库考核.

上传人:花**** 文档编号:145469619 上传时间:2020-09-20 格式:DOCX 页数:20 大小:553.07KB
返回 下载 相关 举报
factory数据库考核._第1页
第1页 / 共20页
亲,该文档总共20页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《factory数据库考核.》由会员分享,可在线阅读,更多相关《factory数据库考核.(20页珍藏版)》请在金锄头文库上搜索。

1、Database programming with RDBMS课程设计职工工资管理统指导老师:郭小芳学号:1441904103姓名: 高嘉威 Database programming with RDBMS考查命题1、根据周围的实际情况,自选一个小型的数据库应用项目,并深入到应用项目中调研,进行分析和设计。例如可选择职工工资管理系统、人事管理系统、教材管理系统和小型超市商品管理系统和图书管理系统等。要求写出数据库设计报告。一、功能需求系统的基本流程是:用户登入主界面选择各项子系统。模块设计和功能说明(一)权限说明:对于不同的用户可以对其赋予不同的权限级别。部门主管拥有最高的权限,能够对员工的资料

2、进行增删,对部门的信息进行增删。1)用户登入:填入用户名称,填写正确的密码,选择用户类型。2)用户登入后,可以对自己的密码进行修改。3)用户可以查看个人资料。以下是各部门主管所特有的权限,其他员工均没有该权限,不能实现一下的操作。4)部门主管可以对员工信息进行浏览、查询、编辑、插入、删除。5)部门主管可以对该公司的部门信息进行浏览、查询、编辑、插入、删除。(二)系统的要求:职工工资管理系统开发时,应该满足以下几点1)方便,容易操作,快捷的原则。2)对于不同的用户,应该有不同的使用权限。3) 各主管的任务是管理部门、职工、工资信息,即时更新、登记、发布信 息,普通职工可以查询、核对自己的基本信息

3、和工资信息。职工工资管理系统 整个系统模块划分如下图:信息查询信息管理系统管理用户登入退出系统修改密码员工信息管理部门信息管理基本信息查询薪资信息查询薪资信息管理基本信息管理系统管理:1)用户登录: 普通用户登录:只可查询信息,不可插入、修改、删除; 主管登录:可插入、修改、查询、删除信息;2)修改密码:凡是该系统的用户都可以修改自己的密码;3)退出系统信息管理:1)部门信息管理:主管可以插入,删除,更改部门信息;2)员工信息管理:主管可以插入,删除,更改员工的基本信息和薪资信息;信息查询:普通员工可以查询自己的基本信息和薪资信息;2、 E-R图3、 关系模型:1.部门信息(部门编号,部门名称

4、)2.员工信息(员工编号,姓名,性别,学历,出生日期,职务,部门编号,密码)3.薪资信息(账号,员工编号,基本工资,福利,缺勤时间及原因,惩罚金额,应缴税 费,总薪资)2、如创建职工工资管理系统中,一个名称为factory的数据库,要求:(1)将主数据库文件factory.mdf放置在H:DBF文件夹中,其文件大小自动增长为按5 MB增长。(2)将事务日志文件factory_log.ldf放置在H:DBF文件夹中,其文件大小自动增长为按1 MB增长。create database factoryon(name=factory,FILENAME=H:DBFfactory.mdf,size=3mb

5、,filegrowth=5mb)log on(name=factory_log,FILENAME=H:DBFfactory_log.ldf,size=1mb,filegrowth=1mb)3、在上机面所创建的数据库factory中,完成如下各题操作。(1)用create语句建立职工表worker,其结构为:职工号,int;姓名,char(8);性别,char(2);出生日期,datetime;党员否char(2);参加工作,datetime;部门号,int。其中“职工号”为主键。并用insert语句在worker表中输入如下记录:职工号姓名性别出生日期党员否参加工作部门号1孙华男01/03/5

6、2是10/10/701012陈明男05/08/45否01/01/651023程西女06/10/80否07/10/021014孙天奇女03/10/65是07/10/871025刘夫文男01/11/42否08/10/601026刘欣男10/08/52否01/07/701017余慧男12/04/80否07/10/021038张旗男11/10/80否07/10/02102use factorygocreate table worker(职工号 int primary key, 姓名 char(8), 性别 char(2), 出生日期 datetime, 党员否 char(2), 参加工作 dateti

7、me, 部门号 int,);insert into workervalues(1,孙华,男,01/03/52,是,10/10/70,101),(2,陈明,男,05/08/45,否,01/01/65,102),(3,程西,女,06/10/80,否,07/10/02,101),(4,孙天奇,女,03/10/65,是,07/10/87,102),(5,刘夫文,男,01/11/42,否,08/10/60,102),(6,刘欣,男,10/08/52,否,01/07/70,101),(7,余慧,男,12/04/80,否,07/10/02,103), (8,张旗,男,11/10/80,否,07/10/02,

8、102)(2)用create语句建立部门表depart,其结构为:部门号,int;部门名,char(10)。其中,“部门号”为主键。并用insert语句在depart表中输入如下记录:部门号部门名101财务处102人事处103市场部use factorygocreate table depart(部门号 int primary key,部门名 char(10);insert into departvalues(101,财务处),(102,人事处), (103,市场部)(3)用create建立职工工资表salary,其结构为:职工号,int;姓名,char(8);日期,datetime;工资,d

9、ecimal(6,1)。其中,“职工号”和“日期”为主键。并用insert语句在salary表中输入如下记录:职工号姓名日期工资1孙华01/04/041201.52陈明01/04/041350.63程西01/04/04750.84孙天奇01/04/04900.05刘夫文01/04/042006.86刘欣01/04/041250.07余慧01/04/04725.08张旗01/04/04728.0use factory gocreate table salary(职工号 int primary key,姓名 char(8),日期 datetime,工资 decimal(6,1);insert in

10、to salaryvalues(1,孙华,01/04/04,1201.5),(2,陈明,01/04/04,1350.6),(3,程西,01/04/04,750.8),(4,孙天奇,01/04/04,900.0),(5,刘夫文,01/04/04,2006.8),(6,刘欣,01/04/04,1250.0),(7,余慧,01/04/04,725.0),(8,张旗,01/04/04,728.0)(4) 建立worker、depart和salary 3个表之间的关系。4、在建立的factory数据库上,完成如下各题的程序,要求以文本格式显示结果。(1)显示所有职工的年龄,并按职工号递增排序。USE f

11、actoryGOSELECT 职工号,YEAR(参加工作)-YEAR(出生日期) AS 年龄 FROM workerORDER BY 职工号 ASCGO(2) 求出各部门的党员人数。USE factoryGOSELECT 部门号,COUNT(党员否) AS 党员人数 FROM workerGROUP BY 部门号GO(3) 显示所有职工的姓名和2004年1月份的工资。USE factoryGOSELECT worker.姓名,工资 FROM worker,salaryWHERE worker.职工号=salary.职工号GO(4) 显示所有职工的职工号、姓名和平均工资。USE factoryG

12、OSELECT worker.职工号,worker.姓名,AVG(工资) AS 平均工资 FROM worker,salaryGROUP BY worker.职工号,worker.姓名GO(5) 显示所有职工的职工号、姓名、部门名和2004年2月份的工资,并按部门名的顺序排列。USE factoryGOSELECT worker.职工号,worker.姓名,部门名,工资 FROM worker,depart,salaryWHERE worker.部门号=depart.部门号 AND worker.职工号=salary.职工号ORDER BY 部门名GO(6) 显示各部门名和该部门的所有职工平均

13、工资。USE factoryGOSELECT 部门名,AVG(工资) AS 平均工资 FROM worker,depart,salaryWHERE worker.部门号=depart.部门号 AND worker.职工号=salary.职工号GROUP BY 部门名GO(7) 显示所有平均工资高于1200的部门名和对应的平均工资。USE factoryGOSELECT 部门名,AVG(工资)AS 平均工资 FROM worker,depart,salaryWHERE worker.部门号=depart.部门号 AND worker.职工号=salary.职工号GROUP BY 部门名HAVIN

14、G AVG(工资)1200GO(8) 显示所有职工的职工号、姓名和部门类型,其中财务部和人事部属于管理部门,市场部属于市场部门。USE factoryGOSELECT 职工号,姓名,部门类型=CASE WHEN 部门名=财务处 THEN 管理部门WHEN 部门名=人事处 THEN 管理部门WHEN 部门名=市场部 THEN 市场部门END FROM worker,departWHERE worker.部门号=depart.部门号GO(9) 若存在职工号为10的职工,则显示其工作部门名称,否则显示相应提示信息。USE factoryGOIF EXISTS(SELECT * FROM workerWHERE

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号