收藏 分销(赏)

数据库实验报告(工资管理).doc

上传人:丰**** 文档编号:4129230 上传时间:2024-07-31 格式:DOC 页数:9 大小:86.04KB 下载积分:6 金币
下载 相关 举报
数据库实验报告(工资管理).doc_第1页
第1页 / 共9页
数据库实验报告(工资管理).doc_第2页
第2页 / 共9页


点击查看更多>>
资源描述
课程设计报告 ( 2014——2015年度第2学期) 名 称:数据库原理课程设计 题 目:工资管理信息系统 院 系: 计算机系 班 级: 学 号: 学生姓名: 指导教师: 设计周数: 1 成 绩: 日期:2015年 7月 10日 《数据库原理课程设计》课程设计 任 务 书 一、 目的与要求 1. 本实验是为计算机系学生在学习数据库原理后,为培养更好的解决问题和实际动手能力而设置的实践环节.通过这个环节,使学生具备应用数据库原理对数据库系统进行设计的能力。为后继课程和毕业设计打下良好基础。 2. 通过该实验,培养学生在建立数据库系统过程中使用关系数据理论的能力。 3. 通过对一个数据库系统的设计,培养学生对数据库需求分析、数据库方案设计、系统编码、界面设计和软件调试等各方面的能力。是一门考查学生数据库原理、面向对象设计方法、软件工程和信息系统分析与设计等课程的综合实验。 二、 主要内容 针对一个具有实际应用场景的中小型系统(见题目附录)进行数据库设计,重点分析系统涉及的实体、实体之间的联系,实现增加、删除、更新、查询数据记录等基本操作.大致分为如下步骤: 1。 理解系统的数据库需求,分析实体及实体间联系,画出E—R图: 1. 分析确定实体的属性和码,完成对该实体的实体完整性、用户自定义完整性的定义. 2. 设计实体之间的联系,包括联系类型和联系的属性。最后画出完整的E-R图。 2.根据设计好的E-R图及关系数据库理论知识设计数据库模式: 1) 把E—R图转换为逻辑模式; 2) 规范化设计。使用关系范式理论证明所设计的关系至少属于3NF并写出证明过程;如果不属于3NF则进行模式分解,直到该关系满足3NF为止,要求写出分解过程。 3) 设计关系模式间的参照完整性,要求实现级联删除和级联更新。 4) 用SQL语言完成数据库内模式的设计。 3.数据库权限的设计: 1) 根据系统分析,完成授权操作; 2) 了解学习收回权限的操作. 4.完成用户界面的设计,对重要数据进行加密. 5.连接数据库,用宿主语言实现系统所需的各种操作: 1) 实现数据记录的录入、删除、查询和修改。 2) 以视图的形式完成复杂查询,比如多表、多条件等. 三、 进度计划 序号 设计(实验)内容 完成时间 备注 1 根据任务书完成信息模型(概念模型、逻辑模型、完整性、规范化)的设计,并基于选用的DBMS实现该信息模型,然后录入初始数据 周一 2 根据任务书完成各种数据定义和数据操作,并保留所有SQL语句. 周二 3 数据库权限设计,用户界面设计 周三 4 用可视化开发工具环境开发学生选定的信息系统(C/S或者B/S模式) 周四 5 系统的完善与验收 周五 四、 设计(实验)成果要求 1. 在DBMS(如oracle,SQL Server 2005/2008,DB2等)上完成完整的数据库的设计; 2. 使用可视化开发平台完成信息系统,要求可以正确运行; 3. 完成实验报告。 五、 考核方式 1. 在微机上检查数据库模式的设计、三大完整性的设计、关系属于几范式等; 2. 在微机上检查系统的运行结果,要求学生阐述使用的相关技术; 3. 实验报告的检查。 六、 题目附录 1. 学生信息管理信息系统 2. 图书管理信息系统 3. 物资管理信息系统 4. 汽车销售管理信息系统 5. 超市管理信息系统 6. 通讯录管理信息系统 7. 工资管理信息系统 8. 酒店管理信息系统 9. 小区物业管理信息系统 学生姓名:任清清 指导教师: 2015 年7月10日 一、课程设计的目的与要求 1. 本实验是为计算机科学与技术等专业的学生在学习数据库原理后,为培养更好的解决问题和实际动手能力而设置的实践环节.通过这个环节,使学生具备应用数据库原理对数据库系统进行设计的能力。为后继课程和毕业设计打下良好基础. 2. 通过该实验,培养学生在建立数据库系统过程中使用关系数据理论的能力. 3. 通过对一个数据库系统的设计,培养学生对数据库需求分析、数据库方案设计、系统编码、界面设计和软件调试等各方面的能力.是一门考查学生数据库原理、面向对象设计方法、软件工程和信息系统分析与设计等课程的综合实验。 二、设计正文 1. E—R图设计 1.1 分析确定实体的属性和码,定义该实体的实体完整性、用户自定义完整性 描述 属性 事件 职员表 ² 员工号 ² 姓名 ² 出生日期 ² 手机号码 ² 工龄 ² 部门号 ² 备注 ² 修改职员表信息 ² 查询职员表信息 ² 添加职员表信息 ² 删除职员表信息 部门表 ² 部门名 ² 部门号 ² 电话 ² 修改部门表信息 ² 查询部门表信息 ² 添加部门表信息 ² 删除部门表信息 工资表 ² 员工号 ² 基本工资 ² 津贴 ² 三金扣款 ² 应发工资 ² 实发工资 ² 修改工资表信息 ² 查询工资表信息 ² 添加工资表信息 ² 删除工资表信息 管理员 ² 登录名 ² 密码 ² 增删改查三个表的信息 ² 查询所有表的信息 ² 按姓名,员工号,部门号删除表 一般用户 ² 登录名 ² 密码 ² 按员工号查询工资表信息 1.2 设计实体之间的联系,包括联系类型和联系的属性 一个职员对应一个工资记录,一个工资记录对应一个职员。一个部门有多个职员,一个职员制属于一个部门.通过设置管理员和一般用户不同权限使管理员对职员表、工资表、部门表信息具有增删改查的权限,一般用户可以查询工资情况。 密码 登录名 1.3 完整E-R图 管理员 1 1 工龄 1 出生日期 管理 管理 管理 基本工资 员工号 部门号 津贴· n n 部门名 性别 n 三金扣款 1 n 属于 电话 工资 部门 职员 姓名 应发工资 手机号码 查询 1 n 实发工资 部门号 1。4 系统结构图 工资管理信息系统 一般用户信息管理模块 登陆模块 管理员信息管理模块 增删改查部门表 增删改查工资表 根据员工号查工资 增删改查职员表信息 管理员登录 一般用户登录 2. 数据库模式设计 2。1把E—R图转换为逻辑模式 职员(员工号,姓名,性别,出生日期,手机号码,工龄,部门号,备注) 管理员(管理员名,管理员密码) 工资(员工号,基本工资,津贴,三金扣款,应发工资,实发工资) 部门(部门号,部门名,电话) (说明:以上关系中,下划线部分为对应关系的主码,加黑部分为外码,且所有属性均非空) 2。2规范化设计 关系名 依赖关系 证明 工资关系 员工号—〉基本工资 基本工资,津贴—〉应发工资 基本工资,津贴,三金扣款—〉实发工资 不存在传递函数依赖,也不存在不完全函数依赖,属于3NF。 部门关系 部门号—〉 部门名 部门号—〉 电话 从关系的函数依赖集可以看出,关系中不存在传递函数依赖,也不存在不完全函数依赖,因此属于3NF。 管理员关系 管理员名 —〉管理员密码 从以上函数依赖集可以看出,该关系不含传递函数依赖,也不含不完全函数依赖,属于3NF. 职员关系 职工号—〉性别,姓名 职工号—〉出生日期,工龄 职工号-〉手机号码,备注 职工号->部门号 从以上函数依赖集可以看出,该关系不含传递函数依赖,也不含不完全函数依赖,属于3NF。 2。3设计关系模式间的参照完整性 2。4用SQL语言完成数据库内模式的设计 (1)职员表 CREATETABLE职员表 ( 员工号 char(3)primarykey, 姓名char(8)notnull, 性别char(2)notnull, 出生日期 smalldatetime(4), 手机号码char(11), 工龄 tinyint(1), 部门号 char(2), 备注 text(16), foreignkey(部门号)references部门表(部门号) ); (2)部门表 CREATETABLE部门表 ( 部门号 char(2) primarykey, 部门名 char(10)notnull, 电话char(4), ); (3)工资表 CREATETABLE工资表 ( 员工号char(3)primarykey, 基本工资decimal(7,2), 津贴decimal(5,2), 三金扣款decimal(6,2), 应发工资decimal(7,2), 实发工资decimal(7,2), foreignkey(员工号)references职员表(员工号) ); 2。5 建表结果 (1)职员表表 (2)部门表 (3)工资表 3。数据库权限设计 创建 查找 修改 删除 管理员 üü ü ü ü 一般用户 ü 4。用户界面设计 4。1 登录主界面 4。2 管理员主界面 4.3 管理员操作界面 (1) 查询 (2) 添加 (3) 修改 (4) 删除 4。4 一般用户操作界面 (1)登录 privatevoid登陆_Click(object sender, EventArgs e) { if (textBox1.Text.Trim() == ”qq” && textBox2。Text.Trim() == "123456”) { //作为管理员登录 MessageBox.Show(”用户权限为管理员权限","提示"); this.Hide(); Form1 form1 = newForm1(); form1.Show(); } elseif (textBox1.Text.Trim() == ”ls” && textBox2。Text.Trim() == ”567890”) { //作为一般用户登录 MessageBox.Show("用户登录权限为一般用户”, ”提示”); this.Hide(); 用户查询窗口用户查询= new用户查询窗口(); 用户查询。Show(); } else { MessageBox。Show(”用户或密码错误"); } } (2)管理员添加 以添加部门表的实现为例,涉及数据库的连接以及添加的SQL语句代码如下: (3)管理员删除 三、课程设计总结或结论 通过此次数据库的课程设计,真正达到了学与用的结合,增强了对数据库方面应用的理解,对自己今后参与开发数据库系统积累了不少经验,在实验过程中,对数据库设计理念及思想上有更高的认识,从需求分析,到概念设计和逻辑设计,E—R图的表示,数据表的创建,学会了不少有关数据库开发过程中的知识。同时增强了自己在数据库中应用SQL语言的灵活性,其中包括,插入、删除、修改、查询,牵涉表和表之间的联系,约束项的设置,使逻辑更严密. 在实验过程中,遇到的问题很多,比如插入操作在前台页面获取的值为空,数据库拒绝了此插入操作,我的解决方法是将所有表的所有属性都改成了不能为空,避免了数据在页面和数据库之前传输操作时的错误. 在整个过程中,我上网和从书中查了不少资料,学以致用,自我创新,从学到用,从用又到学,不断修改,完善系统。虽然不能达到老师要求那样的约束完善的工资管理系统。但在这短短的一周,也实现了较为完善的基本功能,体会到加强理论学习对完善系统会有很多帮助.另外,在发现问题、分析问题和解决问题的过程中,学到了很多东西,对这次做的课程设计自己觉得比较满意。 四、参考文献 [1] 王珊,萨师煊。《数据库系统概论》第五版 高等教育出版社。 [2] 宋雨。 《软件工程》 清华大学出版社 [3] 软件开发技术联盟  《Java开发实战》 清华大学出版社 [3] 袁和金 《数据结构》第二版 中国电力出版社 五、附录(设计流程图、程序、表格、数据等) 5.1 数据库表格及数据 (1)职员表 (2)部门表 (3) 工资表 以删除的实现为例,涉及SQL语句的C#代码如下: (4)管理员查询 (5)管理员修改 以修改职员表的实现为例,涉及SQL语句的C#代码如下: (6)一般用户查询 依照职工号进行工资查询,代码如下
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 通信科技 > 数据库/数据算法

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服