数据库课程设计 工资管理系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计要求:

1.对各个系统进行系统功能需求分析

2. 数据库设计分析阶段,进行详细的数据库需求分析,进行概念数据库的设计,画出数据库的E-R图(局部和整体E-R图)

3. 设计出详细的逻辑数据库结构,将各个实体和联系转化为相应的二维表即关系模式,指定各个关系的主关键字和外部关键字,并对各个关系的约束加以限定

4. 通过企业管理器或是查询分析器实现各个二维关系(建议最好用SQL代码实现),要求建立相关的索引

5. 根据系统功能需求设计相应的查询视图

6. 要求根据系统功能需求建立存储过程

7. 根据功能需求建立相应的触发器以保证数据的一致性

8. 通过建立用户和权限分配实现数据库一定的安全性,考虑数据库的备份与恢复(此内容选作)

一、需求分析

企业的工资管理是公司管理的一个重要内容。随着科学技术的发展,一些公司的规模也越来越大,职工的数量也在不断的增加,企业的管理工作也变得越来越复杂。工资管理既涉及到企业劳动人事的管理,同时也是企业财务的重要组成部分。面对如此大的信息量,单凭传统的表格、手工操作已不能满足实际的需要。因此,我设计工资管理系统来提高财务管理方面的效率。通过这个系统可以使信息的管理更加规范,统计更科学。

模块功能分析:

(1)部门模块:用来管理部门;

(2)工资模块:用来管理员工的工资;

(3)职工模块:用来管理工厂的职工信息;二、概念结构设计

经分析,本系统的e-r图如下:

三、逻辑结构设计

1.工资管理基本信息表

①department(部门)

②staff(职工)

③salary(工资)

①建库

create database salary_manage

on

(name=salary_manage_data,

filename='d:\salary_manage_data.mdf', size=25,

maxsize=35,

filegrowth=5)

log on

(name=manage_log,

filename='d:\salary_manage_data.ldf',

size=25,

maxsize=35,

filegrowth=5)

②建表

/建立职工表/

create table staff

(staff_no char(10) primary key,/*职工工号*/

staff_name char(20) not null,/*职工姓名*/

staff_sex char(25) not null default '男'check( staff_sex in('男','女')),/*性别*/ enducational char(10) default '本科',/*学历*/

dapartment_no char(8) not null,/*部门编号*/

department_name char(15))/*部门名称*/

/*建立工资表*/

create table salary

(staff_no char(10) not null foreign key references staff(staff_no),/*职工工号*/

m_salary int default 3000,/*月薪*/

allowance int default 0,/*津贴*/

out_days int not null check(out_days<=31 and out_days>=0),/*出勤天数*/ work_overtime datetime(10),/*加班时间*/

w_overtime_days int default 0 check(w_overtime_days>=0 and

w_overtime_days<=31),/*加班天数*/

deduct int default 0,/*事故扣薪*/

add_money int default 0,/*加班费*/

issue_salary int(4) not null,/*应发薪水*/

iss_salary int(4) not null)/*实发薪水*/

/*建立部门表*/

create table department

(department_no char(8) primary key,/*部门编号*/ department_name char(15) not null,/*部门名称*/ depart_manage char(6) not null,/*部门经理*/

depart_people int(6)/*部门人数*/

③添加记录

insert into department

values('071011','A部门','王经理',100);

insert into department

values('071012','B部门','李经理',200);

insert into department

values('071013','C部门','张经理',100);

insert into staff

values('0610','李明','男','本科','071011','A部门');

insert into staff

values('0613','张三','男','专科','071011','A部门'); insert into staff

相关文档
最新文档