数据库系统原理及设计课程设计人事管理系统Word文档下载推荐.docx
- 文档编号:17952041
- 上传时间:2022-12-12
- 格式:DOCX
- 页数:18
- 大小:247.54KB
数据库系统原理及设计课程设计人事管理系统Word文档下载推荐.docx
《数据库系统原理及设计课程设计人事管理系统Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《数据库系统原理及设计课程设计人事管理系统Word文档下载推荐.docx(18页珍藏版)》请在冰豆网上搜索。
c)企业每一部门由部门号唯一标识,部门号由系统时间顺序生成。
d)只有部门主管才可以搜索、删除、修改员工信息,员工可以查看和修改自己的信息,不可以对其他员工信息进行操作。
e)每一名员工只能属于一个部门,而且只能安排在一个部门的一个岗位,员工调动时记录调动时间。
f)每个岗位有固定的需求人数,超过限定人数不可以在安排工作。
g)安排工作要符合工作的学历、工龄、外语要求等信息。
h)登记员工调动前后的具体职务,以及调动时间。
3概念设计
3.1主要功能的概念建模分析
根据上面的需求分析,人事管理系统的主要功能有:
员工信息录入、员工信息修改、员工工作安排调动记录。
下面分别对它们进行建模分析。
1、员工与配偶信息录入
每名员工可存在两种婚姻状态,即“已婚”和“未婚”,已婚的员工有配偶信息表,未婚的没有,每一个已婚员工对应一个配偶信息表。
2、员工学历信息录入
每名员工以其学历一一对应,学历表根据员工的学历详情的几项属性进行录入,每名员工必须拥有学历记录。
3、部门聘请员工记录
新近员工都会由各个部门聘用,新员工不一定有岗位,新员工的信息录入不一定要有就职岗位,由聘请时间来记录新员工被聘请的时间。
4、员工工作安排调动记录
员工在企业不一定一直进行一项工作,在这间企业的职业生涯也可能存在工作调动。
3.2确定总E-R图
4逻辑设计
4.1数据字典
1、员工(Employee)实体集。
属性名
含义
类别
域及约束
name
姓名
Varchar(20),不允许空值
employeeNo
员工号
主码
Char(10),不允许空值
sex
性别
Char
(2),取值范围:
{‘男’,‘女’}
native
籍贯
Varchar(20),允许空值
nation
民族
Varchar(20),允许空值
phoneNo
联系电话
Char(13),允许空值
politicalStatus
政治面貌
hireTime
聘请时间
Datetime,不允许空值
postNo
初始岗位
外码
char(6),允许空值
workingYears
工龄
派生属性
char(5),不允许空值
type
员工类型
varChar(5),允许空值
birthday
生日
datetime,允许空值
2、员工配偶(Spouse)实体集。
Char(10),不允许空值
Name
配偶姓名
Varchar(30),不允许空值
Nation
配偶民族
PoliticalStatus
配偶政治面貌
PhoneNo
配偶联系电话
spouseNo
编号
3、员工学历(Education)实体集。
education
学历
Varchar(30),不允许值
graduationTime
毕业时间
Datetime,允许空值
major
专业
Varchar(40),允许值
school
学校
foreignLanguage
外语情况
4、企业工作岗位(Post)实体集。
岗位号
Char(6),不允许空值
postName
岗位名称
Varchar(20),不允许空值
salary
薪水
Char(5),不允许空值
requiredEducation
要求学历
demand
人数需求
departmentNo
所属部门
5、企业部门(Department)实体集。
部门号
departmentName
部门名称
departmentManager
部门主管
char(10),不允许空值
1、员工与部门间聘请(Hire)联系集。
Datetime,不允许空集
就职岗位
2、员工与工作岗位间调动(Transfer)联系集。
recordNo
调动记录号
emplayeeNo
char(6),不允许空值
调后岗位
transferTime
调动时间
Datetime,不允许空值
priorPost
调前岗位
char(6),允许空值
4.2逻辑模式转换
1、员工(Employee)实体集逻辑转换。
Employee(name,employeeNo,sex,native,nation,phoneNo,politicalStatus,hireTime,post,workingYears,type,birthday)。
2、员工配偶(Spouse)实体集逻辑转换。
Spouse(employeeNo,name,age,nation,politicalStatus,phoneNo,birthday,spouseNo)。
3、员工学历(Education)实体集逻辑转换。
Education(employeeNo,education,,graduationTime,major,school,foreignLanguage)。
4、部门岗位(Post)实体集逻辑转换。
Post(postNo,postName,salary,requiredEducation,demand,departmentNo)。
5、公司部门(Department)实体集逻辑转换。
Department(departmentNo,departmentName,Manager)。
6、员工与部门之间有聘请(Hire)关系联系集逻辑转换。
Hire(eployeeNo,departmentNo,departmentManager,hireTime,post)逻辑转换。
7、员工与岗位之间有调动(Transfer)记录联系集逻辑转换。
Transfer(recordNo,eplayeeNo,postNo,transterTime,priorPost,note)逻辑转换。
5数据库设计及实现
5.1基本表的创建
1、数据库及日志文件的创建
CREATEDATABASEEmployeeDB
ON
(NAME=EmployeeDB,
FILENAME='
I:
\EmployeeDB.mdf'
SIZE=5,
MAXSIZE=20
)--创建初始大小为5MB的数据库
LOGON
(NAME=EmployeeLog,
\EmployeeLog.ldf'
)--创建初始大小为5MB的数据库日志文件
2、员工(Employee)基本表的创建
CREATETABLEEmployee(
namevarchar(30)NOTNULL,--员工姓名
employeeNochar(10)NOTNULL,--员工号
sexchar
(2)NULL--性别
CHECK(sexIN('
男'
'
女'
)),
nativevarchar(20)NULL,--籍贯
nationvarchar(20)NULL,--民族
phoneNochar(13)NULL,--联系电话
politicalStatusvarchar(20)NULL,--政治面貌
hireTimedatetimeNOTNULL,--聘请时间
postNochar(6)NULL,--目前岗位
workingYearschar(5)NULL,--工龄
tytevarchar(20)NULL,--员工类型
birthdaydatetimeNULL,--员工生日
)
3、员工配偶信息(Spouse)基本表的创建
CREATETABLESpouse(
namevarchar(30)NOTNULL,--配偶姓名
birthdaydatetimeNULL,--配偶生日
spouseNochar(10)NOTNULL,--编号
4、员工学历(Education)基本表的创建
CREATETABLEEducation(
educationvarchar(30)NOTNULL,--学历
graduationTimedatetimeNOTNULL,--毕业时间
majorvarchar(40)NULL,--专业
schoolvarchar(30)NOTNULL,--学校
foreignLanguagevarchar(30)NULL,--外语情况
5、部门岗位(Post)基本表的创建
CREATETABLEPost(
postNochar(6)NOTNULL,--岗位号
postNamevarchar(20)NOTNULL,--岗位名称
salarychar(5)NOTNULL,--薪水
requireEducationvarchar(30)NULL,--学历要求
demandchar(6)NULL,--人数需求
departmentNochar(5)NOTNULL,--所属部门
6、公司部门(Department)基本表的创建
CREATETABLEDepartment(
departmentNochar(5)NOTNULL,--部门号
departmentNamevarchar(20)NOTNULL,--部门名称
departmentManagerchar(10)NOTNULL,--部门主管
7、部门聘请员工(Hire)基本表的创建
CREATETABLEHire(
postNochar(6)NULL,--就职岗位
8、员工工作调动(Transfer)基本表的创建
CREATETABLETransfer(
recordNochar(6)NOTNULL,--调动记录号
emplayeeNochar(10)NOTNULL,--员工号
postNochar(6)NOTNULL,--调后岗位
transferTimedatetimeNOTNULL,--调动时间
priorPostchar(6)NOTNULL,--调前岗位
5.2增加参照完整性约束
ALTERTABLEEmployee
ADDCONSTRAINTePKPRIMARYKEY(employeeNo)
--把employeeNo设置为表Employee的主键
ADDCONSTRAINTeFKFOREIGNKEY(postNo)
REFERENCESPost(postNo)
--添加外键
ALTERTABLESpouse
ADDCONSTRAINTsPKPRIMARYKEY(spouseNo)
—把spouseNo设置为表Spouse的主键
ADDCONSTRAINTsFKFOREIGNKEY(employeeNo)
REFERENCESEmployee(employeeNo)
ALTERTABLEEducation
ADDCONSTRAINTeduPKPRIMARYKEY(employeeNo)
--把employeeNo设置为表Education的主键
ALTERTABLEPost
ADDCONSTRAINTpPKPRIMARYKEY(postNo)
—把posteNo设置为表Post的主键
ADDCONSTRAINTpFKFOREIGNKEY(departmentNo)
REFERENCESDepartment(departmentNo)
ALTERTABLEDepartment
ADDCONSTRAINTdPKPRIMARYKEY(departmentNo)
--把departmentNo设置为表Department的主键
ADDCONSTRAINTdFKFOREIGNKEY(departmentManager)
--添加外键
ALTERTABLEHire
ADDCONSTRAINThPKPRIMARYKEY(departmentNo,employeeNo)
--把(department,employeeNo)设置为表Hire的主键
ADDCONSTRAINThFK1FOREIGNKEY(departmentNo)
REFERENCESDepartment(departmentNo),
CONSTRAINThFK2FOREIGNKEY(employeeNo)
REFERENCESEmployee(employeeNo),
CONSTRAINThFK3FOREIGNKEY(departmentManager)
CONSTRAINThFK4FOREIGNKEY(postNo)
REFERENCESPost(postNo)
ALTERTABLETransfer
ADDCONSTRAINTtPKPRIMARYKEY(recordNo)
--把recordNo设置为表Transfer的主键
ADDCONSTRAINTtFK1FOREIGNKEY(postNo)
REFERENCESPost(postNo),
CONSTRAINTtFK2FOREIGNKEY(employeeNo)
CONSTRAINTtFK3FOREIGNKEY(priorPost)
5.3数据录入、修改、删除操作
1、全部查询:
SELECT*
FROMEmployee
2、按名字查询:
WHEREname='
张学友'
3、按工号查询:
WHEREemployeeNo='
000007'
4、员工基本信息修改:
UPDATEEmployee
SETnation='
藏族'
WHEREemployeeNo='
5、员工信息录入
INSERTINTOEmployeeVALUES
('
陈学海'
000012'
广东'
汉族'
'
'
中共党员'
2016-01-0100:
00:
00.000'
0002'
0'
技术'
1994-01-0100:
)
5.3.2员工配偶信息操作
1、按名字
SELECTb.*
FROMEmployeea,Spouseb
WHEREa.employeeNo=b.employeeNoANDa.name='
赖均尚'
2、按员工号
WHEREa.employeeNo=b.employeeNoANDa.employeeNo='
000002'
3、按名字修改
UPDATESpouse
WHEREemployeeNoIN
(SELECTEmployeeno
FROMEmployee
WHEREname='
4、按工号修改:
SELECTa.*
FROMEducationa,Employeeb
WHEREa.employeeNo=b.employeeNoANDb.name='
WHEREa.employeeNo=b.employeeNoANDb.employeeNo='
UPDATEEducation
SETschool='
深圳大学'
1、记录插入:
INSERTINTOTransferVALUES
2016-01-0909:
34:
16'
0001'
1、调动记录:
UPDATETABLETransfer
SETpostNo='
transferTime='
2016-01-0809:
priorPost='
6总结
此次的课程设计经过努力终于完成,在这过程中,通过组员合作,相互沟通,虽然没有到实际上的某些公司企业进行需求的咨询和分析,而是通过大量的网上资料进行需求分析,但无疑也是一种锻炼。
与此同时,这次设计也是对期末学习的一种考察和复习,不仅加深对关系模式的掌握,而且对实体-联系模型也有进一步的理解,这是一笔很好的收获。
由于时间紧迫,本系统未能实现功能部分UI操作,关系模型求精也没有做到很精简,对联系集的设置还缺乏合理,系统的部分功能还未能实现。
参考文献
[1]万常选,廖国琼,吴京慧,刘喜平.数据库系统原理与设计.第二版.北京:
清华大学出版社,2012.09.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 系统 原理 设计 课程设计 人事管理系统