《数据库系统》课程实践任务报告任务名称;某单位人事管理系统班级:2013计科本学号:姓名:雄学号:姓名:汪磊完成日期:2015年6月30日信息工程学院计算机系任务名称1.任务的描述人事管理系统是非常通用的管理信息系统,是企事业单位实现办公自动化的前提和基础。
一个公司要正常运作必定有一个健全的人事管理系统,来管理员工的信息,包括员工编号、姓名、性别、民族工资及奖惩考勤情况。
除此之外,系统还供员工查询个人和公共信息,管理员对员工信息进行更改或删除,管理公司的人事变更和管理,大大提高公司部员工管理的工作效率,并要现以下功能。
1.员工信息管理:实现记录在该单位中所有人员的在该单位的员工信息,实现对员工信息的管理,也包括对员工信息的增加、删除、修改等功能。
2.部门信息管理:实现对该单位中的各个部门的编号、部门相关信息的统计,此时也将单位中的所有人员进行分类管理。
3.职位调动管理:实现当员工的就职信息发生更改的时候,系统进行相应关联信息的更改,即增加相应的修改信息的同时,员工的信息管理中的对应信息进行修改。
4.系统管理人员信息管理:实现对相应的系统管理人员的帐号、密码等基本信息的管理功能。
5.出勤信息管理:实现对每一位员工的出勤状况的记录,记录对应的出勤刷卡机号以及出勤时间的信息管理。
6.奖惩管理:实现针对于不同的奖惩类型、奖惩金额等信息的管理,实现输入奖惩信息的修改相应的工资信息。
7.工资管理:实现各个员工工资条目信息的管理。
2.需求分析本系统主要包括的外部实体有:员工、部门、员工职位调动等,要实现的功能主要有:员工、部门、员工职位调动、管理人员信息管理、出勤信息、工资、奖惩等信息管理。
2.1 系统包含的实体1、员工(员工编号,姓名,性别,出生日期,学历,身份证号,民族,职称,部门号,职务)2、个人经历(年份,员工编号,学习经历,任职经历)3、家庭关系(关系编号,员工编号,亲属关系,亲属姓名)4、管理人员(管理员帐号,职工编号,密码,级别)5、出勤(出勤号,员工编号,上班日期,上班时间,下班时间,刷卡机号)6、刷卡机(刷卡机号)7、部门(部门号,部门名,领导人员,员工人数)8、职位调动(调动编号,员工编号,调动前职务,调动后职务,调动前部门号,调动后部门号,调动日期,批复日期,调动原因)9、奖惩记录(奖惩编号,员工编号,奖惩类型,奖惩金额,奖惩日期,批复部门号,批复日期,奖惩原因)10、请假记录(请假编号,员工编号,请假时间,销假时间,请假天数,审批人编号)11、工资(工资编号,员工编号,基本工资,罚款,奖金,结算工资,起始日期,截止日期,发信日期)2.2 系统包含的实体间联系根据“任务描述”中提供某单位人事管理系统信息的实际情况,本系统中实体之间应具有如下的联系:属于部门:部门fi员工,包含属性。
类型:一对多。
属于家庭:家庭fi员工,不包含属性。
类型:一对一。
关于管理员:管理员fi员工,不包含属性。
类型:一对多关于出勤:员工fi出勤,不包含属性。
类型:一对多属于部门:部门fi职位调动,不包含属性。
类型:一对多2.3 系统需实现的功能根据“任务描述”中提供的信息以及本学校的实际情况,本系统需具有如下的功能:1、对本系统中具有的实体及实体间联系的信息的存储;2、具有如下的静态查询:1)对员工、部门、家庭情况、管理人员、奖惩记录、请假记录、工资等信息的查询(用视图实现)2)对员工出勤情况整体的查询(用视图实现)3)对员工奖惩记录情况整体的查询(有视图实现)4)对员工请假记录整体的查询(用视图实现)5)对员工工资整体查询(用视图实现)3、具有如下的动态查询1)给定员工,查询该员工总的工资、每月的工资。
2)给定部门号,查询该部门总的工资金额、每月的工资金额3)给定员工,查询该员工总的奖惩金额、每月的奖惩金额2.4 数据字典数据字典名:员工表示对象:员工实体数据结构:员工编号(char)+姓名(char)+性别(char)+出生日期(datetime)+ 学号(varchar)+ 身份证号(varchar)+民族(varchar)+职称(char)+部门号(char)+职务(char)数据字典名:个人经历表示对象:个人经历实体数据结构:年份(datetime)+员工编号(char)+学习经历(varchar)+任职经历(varchar)数据字典名:部门表示对象:部门实体数据结构:部门号(char)+部门名(char)+领导人员(char)+员工人数(int)表示对象:家庭关系实体数据结构:关系编号(char)+员工编号(char)+亲属关系(char)+亲属姓名(char)数据字典名:职位调动表示对象:职位调动实体数据结构:调动编号(char)+员工编号(char)+调动前职务(char)+调动后职务(char)+调动前部门号(char)+调动后部门号(char)+调动日期(datatime)+批复日期(datatime)+调动日期(varchar)数据字典名:出勤表示对象:出勤实体数据结构:出勤号(char)+员工编号(char)+上班日期(datatime)+下班时间(datatime)+刷卡机号(char)数据字典名:管理人员表示对象:管理人员实体数据结构:管理人员帐号(char)+职工编号(char)+密码(char)+级别(char)数据字典名:刷卡机表示对象:刷卡机实体数据结构:刷卡机号(char)数据字典名:奖惩记录表示对象:奖惩记录实体数据结构:奖惩编号(char)+员工编号(char)+奖惩类型(char)+奖惩金额(char)+奖惩日期(datatime)+批复部门号(char)+批复日期(datatime)+奖惩原因(varchar)数据字典名:工资表示对象:工资实体数据结构:工资编号(char)+员工编号(char)+基本工资(money)+罚款(money)+奖金(money)+结算工资(money)+起始时间(datatime)+截止时间(datatime)+发信时间(datatime)数据字典名:请假记录表示对象:请假记录实体数据结构:请假编号(char )+员工编号(char)+请假时间(datatime )+销假时间(datatime)+请假天数(int )+审批人编号(char )3. 数据库概念数据模型设计个人经历年份学习经历任职经历员工编号3<pi>Date & Time Variable characters (50)Variable characters (50)Characters (4)<M>Identifier_1<pi>部门部门号部门名领导人数员工人数<pi>Characters (4)Characters (4)Characters (4)Integer <M>Identifier_1<pi>职位调动调动编号员工编号3调动前职务调动后职务调动前部门号调动后部门号调动日期批复日期调动原因<pi>Characters (6)Characters (4)Characters (10)Characters (10)Characters (4)Characters (4)Date & Time Date & Time Variable characters (50)<M>Identifier_1<pi>出勤出勤号员工编号3上班日期上班时间下班时间刷卡机号1<pi>Characters (6)Characters (4)Date & Time Date & Time Date & Time Characters (4)<M>Identifier_1<pi>管理人员管理员帐号职工编号密码级别<pi>Characters (4)Characters (4)Characters (6)Characters (4)<M>Identifier_1<pi>奖惩记录奖惩编号员工编号3奖惩类型奖惩金额奖惩日期批复部门号批复日期奖惩原因<pi>Characters (6)Characters (4)Characters (4)Money Date & Time Characters (4)Date & Time Variable characters (50)<M>Identifier_1<pi>工资工资编号员工编号3基本工资罚款奖金结算工资起始时间截至时间发信日期<pi>Characters (6)Characters (4)Money Money Money Money Date & Time Date & Time Date & Time <M>Identifier_1<pi>请假记录请假编号员工编号3请假时间销假时间请假天数审批人编号<pi>Characters (6)Characters (4)Date & Time Date & Time Integer Characters (4)<M>Identifier_1<pi>家庭关系关系编号员工编号3亲属关系亲属姓名<pi>Characters (10)Characters (4)Characters (50)Characters (10)<M>Identifier_1<pi>员工员工编号1姓名性别出生日期学历身份证号民族职称职务部门号1<pi>Characters (4)Characters (10)Characters (2)Date & Time Variable characters (32)Variable characters (32)Variable characters (16)Characters (10)Characters (4)Characters (4)<M>Identifier_1<pi>刷卡机刷卡机号<pi>Characters (4)<M>Identifier_1<pi>4.数据库逻辑数据模型设计请假出勤个人经历#*ooo年份员工编号1学习经历任职经历员工编号3Date & TimeCharacters (4)Variable characters (50)Variable characters (50)Characters (4)部门#ooo部门号部门名领导人数员工人数Characters (4)Characters (4)Characters (4)Integer职位调动#*ooooooo调动编号部门号员工编号3调动前职务调动后职务调动前部门号调动后部门号调动日期批复日期Characters (6)Characters (4)Characters (4)Characters (10)Characters (10)Characters (4)Characters (4)Date & TimeDate & Timeo下班时间Date & Time 管理人员#ooo管理员帐号职工编号密码级别Characters (4)Characters (4)Characters (6)Characters (4)奖惩记录#*ooooooo奖惩编号工资编号员工编号3奖惩类型奖惩金额奖惩日期批复部门号批复日期奖惩原因Characters (6)Characters (6)Characters (4)Characters (4)MoneyDate & TimeCharacters (4)Date & TimeVariable characters (50)请假记录#ooooo请假编号员工编号3请假时间销假时间请假天数审批人编号Characters (6)Characters (4)Date & TimeDate & TimeIntegerCharacters (4)家庭关系#*ooo关系编号员工编号1员工编号3亲属关系亲属姓名Characters (10)Characters (4)Characters (4)Characters (50)Characters (10)员工#***ooooooooo员工编号1管理员帐号关系编号年份姓名性别出生日期学历身份证号民族职称职务部门号1Characters (4)Characters (4)Characters (10)Date & TimeCharacters (10)Characters (2)Date & TimeVariable characters (32)Variable characters (32)Variable characters (16)Characters (10)Characters (4)Characters (4)刷卡机#*刷卡机号出勤号Characters (4)Characters (6)请假##员工编号1请假编号Characters (4)Characters (6)奖惩##员工编号1奖惩编号Characters (4)Characters (6)出勤2##出勤号员工编号1Characters (6)Characters (4)服从##调动编号员工编号1Characters (6)Characters (4)5.数据库物理数据模型设计请假刷卡个人经历年份员工编号1学习经历任职经历员工编号3部门部门号部门名领导人数员工人数职位调动调动编号部门号员工编号3调动前职务调动后职务调动前部门号调动后部门号调动日期批复日期出勤出勤号刷卡机号员工编号3上班日期上班时间下班时间管理人员管理员帐号职工编号密码级别奖惩记录奖惩编号工资编号员工编号3奖惩类型奖惩金额奖惩日期批复部门号批复日期奖惩原因工资工资编号员工编号3基本工资罚款奖金结算工资起始时间截至时间发信日期请假记录请假编号员工编号3请假时间销假时间请假天数审批人编号家庭关系关系编号员工编号1员工编号3亲属关系亲属姓名员工员工编号1管理员帐号关系编号年份姓名性别出生日期学历身份证号民族职称职务部门号1刷卡机刷卡机号出勤号请假员工编号1请假编号奖惩员工编号1奖惩编号出勤2出勤号员工编号1服从调动编号员工编号1if exists(select 1 from sys.sysforeignkey where role='FK_个人经历_拥有_员工') then alter table 个人经历delete foreign key FK_个人经历_拥有_员工 end if;if exists(select 1 from sys.sysforeignkey where role='FK_出勤_刷卡2_刷卡机') then alter table 出勤delete foreign key FK_出勤_刷卡2_刷卡机 end if;if exists(select 1 from sys.sysforeignkey where role='FK_出勤2_出勤_出勤') then alter table 出勤2delete foreign key FK_出勤2_出勤_出勤end if;if exists(select 1 from sys.sysforeignkey where role='FK_出勤2_出勤2_员工') then alter table 出勤2delete foreign key FK_出勤2_出勤2_员工end if;if exists(select 1 from sys.sysforeignkey where role='FK_刷卡机_刷卡_出勤') then alter table 刷卡机delete foreign key FK_刷卡机_刷卡_出勤end if;if exists(select 1 from sys.sysforeignkey where role='FK_员工_信息2_家庭关系') thenalter table 员工delete foreign key FK_员工_信息2_家庭关系end if;if exists(select 1 from sys.sysforeignkey where role='FK_员工_属于_管理人员') then alter table 员工delete foreign key FK_员工_属于_管理人员end if;if exists(select 1 from sys.sysforeignkey where role='FK_员工_拥有2_个人经历') thenalter table 员工delete foreign key FK_员工_拥有2_个人经历end if;if exists(select 1 from sys.sysforeignkey where role='FK_奖惩_奖惩_员工') thenalter table 奖惩delete foreign key FK_奖惩_奖惩_员工end if;if exists(select 1 from sys.sysforeignkey where role='FK_奖惩_奖惩2_奖惩记录') thenalter table 奖惩delete foreign key FK_奖惩_奖惩2_奖惩记录end if;if exists(select 1 from sys.sysforeignkey where role='FK_奖惩记录_对应_工资') then alter table 奖惩记录delete foreign key FK_奖惩记录_对应_工资end if;if exists(select 1 from sys.sysforeignkey where role='FK_家庭关系_信息_员工') then alter table 家庭关系delete foreign key FK_家庭关系_信息_员工end if;if exists(select 1 from sys.sysforeignkey where role='FK_服从_服从_职位调动') then alter table 服从delete foreign key FK_服从_服从_职位调动end if;if exists(select 1 from sys.sysforeignkey where role='FK_服从_服从2_员工') then alter table 服从delete foreign key FK_服从_服从2_员工end if;if exists(select 1 from sys.sysforeignkey where role='FK_职位调动_依赖_部门') then alter table 职位调动delete foreign key FK_职位调动_依赖_部门end if;if exists(select 1 from sys.sysforeignkey where role='FK_请假_请假_员工') then alter table 请假delete foreign key FK_请假_请假_员工end if;if exists(select 1 from sys.sysforeignkey where role='FK_请假_请假2_请假记录') thenalter table 请假delete foreign key FK_请假_请假2_请假记录end if;drop index if exists 个人经历.拥有_FK;drop index if exists 个人经历.个人经历_PK;drop table if exists 个人经历;drop index if exists 出勤.刷卡2_FK;drop index if exists 出勤.出勤_PK;drop table if exists 出勤;drop index if exists 出勤2.出勤_FK;drop index if exists 出勤2.出勤2_FK;drop index if exists 出勤2.出勤2_PK;drop table if exists 出勤2;drop index if exists 刷卡机.刷卡_FK;drop index if exists 刷卡机.刷卡机_PK; drop table if exists 刷卡机;drop index if exists 员工.拥有2_FK;drop index if exists 员工.信息2_FK;drop index if exists 员工.属于_FK;drop index if exists 员工.员工_PK;drop table if exists 员工;drop index if exists 奖惩.奖惩_FK;drop index if exists 奖惩.奖惩2_FK;drop index if exists 奖惩.奖惩_PK;drop table if exists 奖惩;drop index if exists 奖惩记录.对应_FK; drop index if exists 奖惩记录.奖惩记录_PK; drop table if exists 奖惩记录;drop index if exists 家庭关系.信息_FK;drop table if exists 家庭关系;drop index if exists 工资.工资_PK;drop table if exists 工资;drop index if exists 服从.服从_FK;drop index if exists 服从.服从2_FK;drop index if exists 服从.服从_PK;drop table if exists 服从;drop index if exists 管理人员.管理人员_PK; drop table if exists 管理人员;drop index if exists 职位调动.依赖_FK; drop index if exists 职位调动.职位调动_PK; drop table if exists 职位调动;drop index if exists 请假.请假_FK;drop index if exists 请假.请假2_FK;drop index if exists 请假.请假_PK;drop table if exists 请假;drop index if exists 请假记录.请假记录_PK;drop table if exists 请假记录;drop index if exists 部门.部门_PK;drop table if exists 部门;/*============================================================= =*//* Table: 个人经历*//*============================================================= =*/create table 个人经历(年份timestamp not null,员工编号1 char(4) not null,学习经历varchar(50) null,任职经历varchar(50) null,员工编号char(4) null,constraint PK_个人经历primary key (年份));/*============================================================= =*//* Index: 个人经历_PK *//*============================================================= =*/create unique index 个人经历_PK on 个人经历(年份ASC);=*//* Index: 拥有_FK *//*============================================================= =*/create index 拥有_FK on 个人经历(员工编号1 ASC);/*============================================================= =*//* Table: 出勤*//*============================================================= =*/create table 出勤(出勤号char(6) not null,刷卡机号char(4) not null,员工编号char(4) null,上班日期timestamp null,上班时间timestamp null,下班时间timestamp null,刷卡机号1 char(4) null,constraint PK_出勤primary key (出勤号));/*============================================================= =*//* Index: 出勤_PK *//*============================================================= =*/create unique index 出勤_PK on 出勤(出勤号ASC/*============================================================= =*//* Index: 刷卡2_FK *//*============================================================= =*/create index 刷卡2_FK on 出勤(刷卡机号ASC);/*============================================================= =*//* Table: 出勤2 *//*============================================================= =*/create table 出勤2(出勤号char(6) not null,员工编号1 char(4) not null,constraint PK_出勤2 primary key (出勤号, 员工编号1));/*============================================================= =*//* Index: 出勤2_PK *//*============================================================= =*/create unique index 出勤2_PK on 出勤2 (出勤号ASC,员工编号1 ASC);/* Index: 出勤2_FK *//*============================================================= =*/create index 出勤2_FK on 出勤2 (员工编号1 ASC);/*============================================================= =*//* Index: 出勤_FK *//*============================================================= =*/create index 出勤_FK on 出勤2 (出勤号ASC);/*============================================================= =*//* Table: 刷卡机*//*============================================================= =*/create table 刷卡机(刷卡机号char(4) not null,出勤号char(6) not null,constraint PK_刷卡机primary key (刷卡机号));/*============================================================= =*//* Index: 刷卡机_PK */create unique index 刷卡机_PK on 刷卡机(刷卡机号ASC);/*============================================================= =*//* Index: 刷卡_FK *//*============================================================= =*/create index 刷卡_FK on 刷卡机(出勤号ASC);/*============================================================= =*//* Table: 员工*//*============================================================= =*/create table 员工(员工编号1 char(4) not null,管理员帐号char(4) not null,关系编号char(10) not null,年份timestamp not null,姓名char(10) null,性别char(2) null,出生日期timestamp null,学历varchar(32) null,身份证号varchar(32) null,民族varchar(16) null,职称char(10) null,部门号1 char(4) null,constraint PK_员工primary key (员工编号1));/*============================================================= =*//* Index: 员工_PK *//*============================================================= =*/create unique index 员工_PK on 员工(员工编号1 ASC);/*============================================================= =*//* Index: 属于_FK *//*============================================================= =*/create index 属于_FK on 员工(管理员帐号ASC);/*============================================================= =*//* Index: 信息2_FK *//*============================================================= =*/create index 信息2_FK on 员工(关系编号ASC);/*=============================================================/* Index: 拥有2_FK *//*============================================================= =*/create index 拥有2_FK on 员工(年份ASC);/*============================================================= =*//* Table: 奖惩*//*============================================================= =*/create table 奖惩(员工编号1 char(4) not null,奖惩编号char(6) not null,constraint PK_奖惩primary key (员工编号1, 奖惩编号));/*============================================================= =*//* Index: 奖惩_PK *//*============================================================= =*/create unique index 奖惩_PK on 奖惩(员工编号1 ASC,奖惩编号ASC);/*============================================================= =*//* Index: 奖惩2_FK */=*/create index 奖惩2_FK on 奖惩(奖惩编号ASC);/*============================================================= =*//* Index: 奖惩_FK *//*============================================================= =*/create index 奖惩_FK on 奖惩(员工编号1 ASC);/*============================================================= =*//* Table: 奖惩记录*//*============================================================= =*/create table 奖惩记录(奖惩编号char(6) not null,工资编号char(6) not null,员工编号char(4) null,奖惩类型char(4) null,奖惩金额numeric(8,2) null,奖惩日期timestamp null,批复部门号char(4) null,批复日期timestamp null,奖惩原因varchar(50) null,constraint PK_奖惩记录primary key (奖惩编号));/* Index: 奖惩记录_PK *//*============================================================= =*/create unique index 奖惩记录_PK on 奖惩记录(奖惩编号ASC);/*============================================================= =*//* Index: 对应_FK *//*============================================================= =*/create index 对应_FK on 奖惩记录(工资编号ASC);/*============================================================= =*//* Table: 家庭关系*//*============================================================= =*/create table 家庭关系(关系编号char(10) not null,员工编号1 char(4) not null,员工编号char(4) null,亲属关系char(50) null,亲属姓名char(10) null,constraint PK_家庭关系primary key (关系编号));/* Index: 家庭关系_PK *//*============================================================= =*/create unique index 家庭关系_PK on 家庭关系(关系编号ASC);/*============================================================= =*//* Index: 信息_FK *//*============================================================= =*/create index 信息_FK on 家庭关系(员工编号1 ASC);/*============================================================= =*//* Table: 工资*//*============================================================= =*/create table 工资(工资编号char(6) not null,员工编号char(4) null,基本工资numeric(8,2) null,罚款numeric(8,2) null,奖金numeric(8,2) null,结算工资numeric(8,2) null,起始时间timestamp null,发信日期timestamp null,constraint PK_工资primary key (工资编号));/*============================================================= =*//* Index: 工资_PK *//*============================================================= =*/create unique index 工资_PK on 工资(工资编号ASC);/*============================================================= =*//* Table: 服从*//*============================================================= =*/create table 服从(调动编号char(6) not null,员工编号1 char(4) not null,constraint PK_服从primary key (调动编号, 员工编号1));/*============================================================= =*//* Index: 服从_PK *//*============================================================= =*/create unique index 服从_PK on 服从(调动编号ASC,/*============================================================= =*//* Index: 服从2_FK *//*============================================================= =*/create index 服从2_FK on 服从(员工编号1 ASC);/*============================================================= =*//* Index: 服从_FK *//*============================================================= =*/create index 服从_FK on 服从(调动编号ASC);/*============================================================= =*//* Table: 管理人员*//*============================================================= =*/create table 管理人员(管理员帐号char(4) not null,职工编号char(4) null,密码char(6) null,级别char(4) null,constraint PK_管理人员primary key (管理员帐号)/*============================================================= =*//* Index: 管理人员_PK *//*============================================================= =*/create unique index 管理人员_PK on 管理人员(管理员帐号ASC);/*============================================================= =*//* Table: 职位调动*//*============================================================= =*/create table 职位调动(调动编号char(6) not null,部门号char(4) not null,员工编号char(4) null,调动前职务char(10) null,调动后职务char(10) null,调动前部门号char(4) null,调动后部门号char(4) null,调动日期timestamp null,批复日期timestamp null,调动原因varchar(50) null,constraint PK_职位调动primary key (调动编号));/*============================================================= =*//*============================================================= =*/create unique index 职位调动_PK on 职位调动(调动编号ASC);/*============================================================= =*//* Index: 依赖_FK *//*============================================================= =*/create index 依赖_FK on 职位调动(部门号ASC);/*============================================================= =*//* Table: 请假*//*============================================================= =*/create table 请假(员工编号1 char(4) not null,请假编号char(6) not null,constraint PK_请假primary key (员工编号1, 请假编号));/*============================================================= =*//* Index: 请假_PK *//*============================================================= =*/员工编号1 ASC,请假编号ASC);/*============================================================= =*//* Index: 请假2_FK *//*============================================================= =*/create index 请假2_FK on 请假(请假编号ASC);/*============================================================= =*//* Index: 请假_FK *//*============================================================= =*/create index 请假_FK on 请假(员工编号1 ASC);/*============================================================= =*//* Table: 请假记录*//*============================================================= =*/create table 请假记录(请假编号char(6) not null,员工编号char(4) null,请假时间timestamp null,请假天数integer null,审批人编号char(4) null,constraint PK_请假记录primary key (请假编号));/*============================================================= =*//* Index: 请假记录_PK *//*============================================================= =*/create unique index 请假记录_PK on 请假记录(请假编号ASC);/*============================================================= =*//* Table: 部门*//*============================================================= =*/create table 部门(部门号char(4) not null,部门名char(4) null,领导人数char(4) null,员工人数integer null,constraint PK_部门primary key (部门号));/*============================================================= =*//* Index: 部门_PK *//*=============================================================create unique index 部门_PK on 部门(部门号ASC);alter table 个人经历add constraint FK_个人经历_拥有_员工foreign key (员工编号1) references 员工(员工编号1)on update restricton delete restrict;alter table 出勤add constraint FK_出勤_刷卡2_刷卡机foreign key (刷卡机号) references 刷卡机(刷卡机号)on update restricton delete restrict;alter table 出勤2add constraint FK_出勤2_出勤_出勤foreign key (出勤号) references 出勤(出勤号)on update restricton delete restrict;alter table 出勤2add constraint FK_出勤2_出勤2_员工foreign key (员工编号1) references 员工(员工编号1)on update restricton delete restrict;alter table 刷卡机add constraint FK_刷卡机_刷卡_出勤foreign key (出勤号) references 出勤(出勤号)on update restrictalter table 员工add constraint FK_员工_信息2_家庭关系foreign key (关系编号) references 家庭关系(关系编号)on update restricton delete restrict;alter table 员工add constraint FK_员工_属于_管理人员foreign key (管理员帐号) references 管理人员(管理员帐号)on update restricton delete restrict;alter table 员工add constraint FK_员工_拥有2_个人经历foreign key (年份) references 个人经历(年份)on update restricton delete restrict;alter table 奖惩add constraint FK_奖惩_奖惩_员工foreign key (员工编号1) references 员工(员工编号1)on update restricton delete restrict;alter table 奖惩add constraint FK_奖惩_奖惩2_奖惩记录foreign key (奖惩编号) references 奖惩记录(奖惩编号)on update restricton delete restrict;alter table 奖惩记录add constraint FK_奖惩记录_对应_工资foreign key (工资编号)references 工资(工资编号)on update restricton delete restrict;alter table 家庭关系add constraint FK_家庭关系_信息_员工foreign key (员工编号1) references 员工(员工编号1)on update restricton delete restrict;alter table 服从add constraint FK_服从_服从_职位调动foreign key (调动编号) references 职位调动(调动编号)on update restricton delete restrict;alter table 服从add constraint FK_服从_服从2_员工foreign key (员工编号1) references 员工(员工编号1)on update restricton delete restrict;alter table 职位调动add constraint FK_职位调动_依赖_部门foreign key (部门号) references 部门(部门号)on update restricton delete restrict;alter table 请假add constraint FK_请假_请假_员工foreign key (员工编号1) references 员工(员工编号1)on update restricton delete restrict;alter table 请假add constraint FK_请假_请假2_请假记录foreign key (请假编号)references 请假记录(请假编号)on update restricton delete restrict;6.成果分析课程设计,是我们对现在所学的《数据库原理与应用——基于SQL Server》书中理论知识的实践,我们的课程设计题目是“某单位的人事管理系统”。