数据库课程设计大作业Word文档下载推荐.docx
《数据库课程设计大作业Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《数据库课程设计大作业Word文档下载推荐.docx(16页珍藏版)》请在冰豆网上搜索。
![数据库课程设计大作业Word文档下载推荐.docx](https://file1.bdocx.com/fileroot1/2022-11/16/5ad96e2a-9d33-4432-85b1-a977d39da8af/5ad96e2a-9d33-4432-85b1-a977d39da8af1.gif)
3.按时上机调试,认真完成课程设计。
4.认真编写课程设计报告。
三、意义:
数据库技术是近年来计算机科学技术中发展最快的领域之一,它已成为计算机信息系统与应用系统的核心技术和重要基础。
《数据库原理及应用》课程设计重视实践环节,对于巩固数据库知识,加强学生的实际动手能力和提高学生综合素质十分必要。
二>
需求分析
工资管理系统包括如下功能:
(结构图如下)
工资管理系统功能结构图
(1)经理室:
管理人员;
(2)财务科:
财务人员;
(3)技术科:
技术人员;
(4)销售科:
销售人员。
三>
数据库概念结构设计
工资管理系统:
(1)在工资管理局部应用中主要涉及的实体的属性:
Ø
科室(科室号,科室名)
员工(员工号,员工名,性别,年龄,职称,科室代码)
工资(员工号,基本工资,奖金,福利,住房公积金,失业保险,实发工资,月份)
(2)实体间的联系:
公司与科室之间是1:
m(m≥0)的联系;
科与员工之间是m:
n的联系;
管理部门与员工之间是1:
n的关系;
员工与工资之间是1:
1的联系。
(3)工资管理系统的E-R图:
四>
数据库逻辑结构设计
(1)逻辑结构设计图型描述:
表1KESHI表结构
字段名
数据类型
字段长度
允许空否
字段说明
Kno
Char
2
NotNull
科室代码,主键,
Kname
Varchar
10
科室名称
表1WORKER表结构
Wno
6
工号,主键
Wname
姓名
Sex
性别
Age
INT
年龄
Prof
职称
4
(单位)科室代码,外键(参照KESHI表)
表3SALARY表结构
工号,主键,
外键(参照WORKER表)
Wbase
Dec
Null
基本工资
Wbonus
奖金
Wwelfare
福利
WG
住房公积金
WL
DEC
NOTNULL
失业保险
Wfact
实发工资=基本工资+奖金+福利
—失业保险—住房公积金
Month
Int
月份
表4表KESHI中的数据
01
经理室
02
财务科
03
技术科
04
销售科
表5表WORKER中的数据
000001
罗宏波一
男
21
经理
000002
罗宏波二
女
22
副经理
000003
罗宏波三
23
工程师
000004
罗宏波四
24
销售员
000005
罗宏波五
25
000006
罗宏波六
26
会计师
000007
罗宏波七
27
000008
罗宏波八
28
000009
罗宏波九
29
000010
罗宏波十
表6表SALARY中的数据
month
3000
300
100
50
3300
1
2500
200
2700
逻辑结构设计图
(2)逻辑结构设计列表描述:
序号
表名
中文名
作用
KESHI
科室名称表
存储科室信息
WORKER
员工基本信息表
存储员工基本信息
3
SALARY
工资表
存储员工工资信息
数据库中各表的作用
五>
数据库实现
/*createdatabaseGONGZIGUANLI*/
/*createtableKESHI
(
Knochar
(2)notnull,
Knamevarchar(10)notnull,
primarykey(Kno)
);
*/
/*createtableWORKER
Wnochar(6)notnull,
Wnamevarchar(10)notnull,
Sexchar
(2)notnull,
Ageintnotnull,
Profvarchar(10)NOTnull,
primarykey(Wno),
foreignkey(Kno)referencesKESHI(Kno)
/*createtableSALARY
Wbasedec(6)notnull,
Wbonusdec(6)NOTNULL,
Wwelfaredec(6)NOTNULL,
WGdec(6)NOTNULL,
WLdec(6)NOTNULL,
Wfactas(Wbase+Wbonus+Wwelfare-WG-WL),
monthintnotnull,
foreignkey(Wno)referencesWORKER(Wno)
/*insertintoKESHI(Kno,Kname)values('
01'
'
经理室'
insertintoKESHI(Kno,Kname)values('
02'
财务科'
03'
技术科'
04'
销售科'
/*insertintoWORKER(Wno,Wname,Sex,Age,Prof,Kno)values('
000001'
罗宏波一'
男'
21'
经理'
insertintoWORKER(Wno,Wname,Sex,Age,Prof,Kno)values('
000002'
罗宏波二'
女'
22'
副经理'
000003'
罗宏波三'
23'
工程师'
000004'
罗宏波四'
24'
销售员'
000005'
罗宏波五'
25'
000006'
罗宏波六'
26'
会计师'
000007'
罗宏波七'
27'
000008'
罗宏波八'
28'
000009'
罗宏波九'
29'
000010'
罗宏波十'
/*
insertinto
SALARY(Wno,Wbas