[计算机软件及应用]数据库综合实验报告.doc

上传人:sccc 文档编号:4561831 上传时间:2023-04-27 格式:DOC 页数:32 大小:2.04MB
返回 下载 相关 举报
[计算机软件及应用]数据库综合实验报告.doc_第1页
第1页 / 共32页
[计算机软件及应用]数据库综合实验报告.doc_第2页
第2页 / 共32页
[计算机软件及应用]数据库综合实验报告.doc_第3页
第3页 / 共32页
[计算机软件及应用]数据库综合实验报告.doc_第4页
第4页 / 共32页
[计算机软件及应用]数据库综合实验报告.doc_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《[计算机软件及应用]数据库综合实验报告.doc》由会员分享,可在线阅读,更多相关《[计算机软件及应用]数据库综合实验报告.doc(32页珍藏版)》请在三一办公上搜索。

1、计算机与信息工程学院实验报告专业:嵌入式系统 年级: 12级课程:数据库系统概论 实验题目:数据库设计综合应用实验目的与任务:1.掌握数据库设计和实现的基本过程。2.掌握数据库模式设计、分析和实现的方法。3.了解数据库应用系统软件开发的一般过程。实验基本要求: (1)学习相关的预备知识。(2)按照数据库设计与实现过程完成数据库的设计,应用程序的开发,上机调试、运行。(3)写出课程设计报告。课程设计题目:工资管理系统。设计任务与要求:为工资管理部门建立一个数据库来管理员工的工资。计算员工的工资,考虑不在休假日期以内的假期、工作期间的病假时间、奖金和扣除的部分。指明给每个员工发薪水的方式。大多数的

2、员工是通过银行卡来结算工资的,但是也有一部分人使用现金或支票。如果是通过银行卡,就需要知道账号和卡的类型。付款方式只可能是一种方式。有几种原因可以扣除工资:例如,个人所得税、国家税、医疗保险、退休保险或者预付款。设备与环境:(1) 硬件设备:PC机一台。(2) 软件环境:安装Windows操作系统,安装数据库管理系统SQL Server2005。实验内容及步骤:(一)需求分析1数据录入功能对员工信息和工资信息进行日常的管理。例如,员工基本信息数据的输入、修改、增加、删除。工资信息的输入、查询、修改、增加、删除,迅速准确地完成工资信息的统计计算和汇总。2.数据的查询功能1)员工基本信息:工号、姓

3、名、性别、年龄、部门编号、基本工资。2)部门管理:部门编号、部门名称、基本工资、部门人数。3)工资管理:工号、基本工资、奖金、个人所得税、国家税、医疗保险、退休保险、请假天数、扣除工资、应发工资、实发工资、发薪方式、银行卡号、银行卡类型。3.数据统计功能统计每个员工月工资情况。(二)概念分析部门实体E-R图基本工资工号部门编号姓名员工基本工资部门编号年龄性别部门部门名称部门人数基本工资个人所得税奖金国家税工号医疗保险发薪方式工 资退休保险应发工资实发工资请假天数扣除工资(三)逻辑设计将数据库的概念模型转化为关系模型员工:工号、姓名、性别、年龄、部门编号、基本工资。部门:部门编号、部门名称、基本

4、工资、部门人数。工资:工号、基本工资、奖金、个人所得税、国家税、医疗保险、退休保险、请假天数、扣款工资、应发工资、实发工资、发薪方式、银行卡号、银行卡类型。员工表列名数据类型备注工号char(5)主键姓名char(20)不为空性别char(2)不为空年龄char(2)不为空部门编号char(2)不为空基本工资decimal(9,2)不为空部门表列名数据类型备注部门编号char(2)主键部门名称char(20)不为空基本工资decimal(9,2)不为空部门人数char(3)不为空工资表列名数据类型备注工号char(5)主键不为空基本工资decimal(9,2)不为空奖金decimal(9,2)

5、不为空个人所得税decimal(9,2)不为空国家税decimal(9,2)不为空医疗保险decimal(9,2)不为空退休保险decimal(9,2)不为空请假天数char(2)不为空扣除工资decimal(9,2)不为空应发工资decimal(9,2)不为空实发工资decimal(9,2)不为空发薪方式char(10)不为空银行卡号char(19)不为空银行卡类型char(20)不为空建立一个视图,反映员工姓名及工资情况。CREATE VIEW g_sal AS SELECT 员工表.姓名,工资表.* FROM 员工表,工资表 WHERE 员工表.工号=工资表.工号(四)物理设计系统已经有

6、的索引有:对每个表的主键系统建立了索引可以设计的索引有: 为提高检索性能,为表创建符合索引,其索引项为工号、姓名。(五)实施1登录控制:创建三个登录名:u1,u2,u3以及三个用户名:员工,部门经理 ,数据库管理员 ,并对员工赋予员工表,部门表,工资表的查询权,对部门经理赋予员工表,部门表,工资表的查询权和对工资表的修改权,对数据库管理员赋予所有权利2.数据完整性:1)给每个表实施主键约束、非空值约束员工表:工号为主键,此项非空,部门表:部门编号为主键,此项非空工资表:工号为主键,此项非空2)实施CHECK约束员工表中建立检查约束,即员工性别不是男就是女,CHECK(性别 IN(男,女),年龄

7、均小于100,CHECK(年龄100)。alter table 员工表 add constraint sex check(性别 in(男,女);alter table 员工表 add constraint age check(年龄100);3)外键约束员工表中,部门编号为外键。FOREIGN KEY(部门编号) REFERENCES 部门表(部门编号)工资表中,员工号为外键。FOREIGN KEY(工号) REFERENCES 员工表(工号)通过此键建立3个表的联系Alter table 工资表 add constraint fk_gno foreign key(工号)references 员

8、工表(工号);Alter table 员工表 add constraint fk_bh foreign key(部门编号)references 部门表(部门编号);4)惟一约束每个表的主键需定义为惟一性:对于工资表,因为工号是主键,联系着员工表,所以建立唯一性 对于员工表,员工的工号用于识别员工身份,所以建立唯一约束 3. 安全性设计:设置三类用户:员工,部门经理,数据库管理员员工:只可以查询本人的基本信息及各个月的工资情况部门经理:可以查询员工的基本信息及对本部门员工工资的管理数据库管理员:对数据库进行管理包括对数据的查询、修改、删除等操作Grant select,update on 工资表 to 部门经理;Grant select on 部门表 to 部门经理;4. 触发器为工资表创建一个基于UPDATE操作的触发器,当修改了该表中的发薪方式时,触发器被激活生效,显示相关的操作信息。显示工号,改变前和改变后的发薪方式。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 教育教学 > 成人教育


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号