课程设计(论文)
课程名称: 数据库系统分析与设计 题 目:人事信息管理系统
数据库设计与实现
院 (系): 专业班级: 姓 名: 学 号: 指导教师:
年 月 日
摘要
数据库是数据管理的最新技术,是计算机科学的重要分支。在应用需求的推动下,在计算机硬件、软件的发展基础上,数据库技术从人工管理阶段、文件系统阶段一直发展到现在的数据库系统阶段这几个过程。现在的数据库系统具有存储容量大、数据结构化、数据的共享性高、冗余度低、易扩充、数据性高等特点。便于用于现代社会发展各个领域的数据的管理。
人事信息管理是数据管理的一项非常重要任务。社会上许多的公司、部门、机关、学校等,都需要对自己的人事进行管理。在对于一些大型公司、部门或者一些跨地区乃至的公司,原始的数据管理技术显得会很麻烦,不便管理,甚至在人员发生变动后,在数据处理上便会发生很多不可抗的问题。此处,如果使用了数据库管理技术,会使问题简化许多。
此处,针对光影传媒公司的人事信息管理系统为例,对数据库进行分析与设计。在与相关人员进行了充分的交流,掌握了即将设计的数据库的基本信息之后,进行基本的需求分析,通过需求分析得出的结论,找出人事信息管理中的基本对象,对每个对象进行认真的分析。之后,应用数据库设计软件PowerDesigner,建立起基本的概念模型,由概念模型抽象出逻辑模型,然后有所得的概念模型得出物理模型。
关键字:数据库,分析,设计,人事信息管理,PowerDesigner
目 录
1 绪论 ...................................................... 1 1.1系统简介 ................................................ 1 1.2设计目的 ................................................ 1 1.3设计容 .................................................. 2 2 需求分析 .................................................. 2 2.1 .需求分析的任务 ......................................... 2 2.2 系统数据流程分析 ........................................ 4 2.3 数据字典 ................................................ 7 3 概念模型设计 ............................................. 10 3.1 概念模型设计的方法和步骤 ............................... 10 3.2 系统概念模型 ........................................... 11 4.1 逻辑模型设计的方法 ..................................... 13 4.2 逻辑模型实现 ........................................... 13 4.3 数据完整性约束定义 ..................................... 14 5 物理数据库模型设计与实现 ................................. 15 5.1 物理数据库模型的图示 ................................... 15 5.2 物理数据库模型的详细表示 ............................... 16 5.3 物理数据库模型的实现 ................................... 20 总结 ....................................................... 35 参考文献 ................................................... 36
1 绪论
1.1系统简介
光影传媒公司是成立于19XX年的一家传媒公司,公司目在全国各地有三家分公司。该公司囊括电影、电视、音乐、动漫等行业,公司的部门有董事会、营销部、策划部、后勤部等。公司现有职工一千多人,其学历、收入、所在部门各不相同,同时,有时由于业务需求,各部门之间会有一定的人事调动。对于如此庞大且繁杂的数据系统,如果采用传统的数据管理显然不能满足管理的需求。于是,要求设计一个适合于光影传媒公司人事信息管理数据库,用以实现统计、管理公司各职员的基本信息、各个部门的情况、员工的转入或转出、人员的调动,以及公司的各项事务、各项事务的负责情况、进展情况、实施情况和一些相关的后续情况等。要求对于建成的数据库,要能对其中的数据进行增添、删除、修改和更新操作,并且,在使用时,要方便对数据库进行查询,并显示出查询结果。 1.2设计目的
实现对公司员工的基本信息进行统计,包括、员工号、性别、学历、职称等;对公司各项业务以及业务的实施情况进行统计,包括项目编号、项目名称、项目进展情况等;记录各个员工的转入、转出、调动情况;各个部门的具体情况、负责人、各项目的负责人等。用以记录公司正常运营的各种业务以及提供所需数据,方便公司管理人员以及数据库管理人员对数据进行增加、删除、修改、查询等处理。维持公司的正常运转,提供必要的资料,对公司进行更好的管理。
1.3设计容
分析光影传媒公司人事信息管理数据库所要现的功能的要求,针对要求,做出具体的需求分析,在需求分析之后,需要进行设计的容如下:
(1)根据业务调查以及查阅资料了解了光影传媒公司人事信息管理的基本业务之后,设计观影传媒公司人事信息管理的业务、数据流程图;
(2)根据已设计的流程图设计出相应的数据字典;
(3)根据以设计好的业务和数据流程图进行仔细分析,设定实体、属性及关系,设计出业务基本的概念模型,并对其进行适当的优化;
(4)基于已设计出的概念模型设计出逻辑模型,对逻辑模型进行优化; (5)根据以上的概念模型设计出物理模型,该模型用于存储数据。
2 需求分析
2.1 .需求分析的任务
进行整个数据库设计必须准确了解与分析用户需求(包括数据和处理)。需求分析是整个设计过程的基础,是最困难、最耗费时间的一步。作为地基的需求分析是否做得充分与准确,决定了在其上构建数据库大厦的速度和质量。
需求分析的任务是通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能。
需求分析调查的重点是“数据”和“处理”,通过调查、收集和分析,获得用户对数据库的如下需求:
(1)信息需求:
①公司员工信息:员工编号、员工、性别、学历、所属部门、毕业
院校、健康状况、学历、职称、工资、联系方式、职务、奖惩状况、起始工作时间、终止工作时间;
②公司部门信息:部门编号、部门名称、部门负责人、部门工作描
述;
③项目信息:项目编号、项目名称、项目描述、项目负责人、项目
参与部门、项目开始时间、项目结束时间;
④员工出勤信息:员工编号、员工、日期、出勤状况、缺勤原因、
备注;
⑤员工参与项目信息:员工编号、员工、项目编号、项目名称、项
目负责人、备注。
(2)处理要求。指用户需要完成什么处理功能。明确用户对数据有什么样的处理要求,从而确定数据之间的相互关系。
①数据的录入:对公司的员工的基本信息、部门的基本信息、项目的基本信息等进行信息的录入,并对数据进行存储;
②信息的更新:数据库管理人员要求能对公司员工的信息、部门信息、项目信息等进行增加、修改、删除、查询等功能;
③信息的查询:公司各部门的员工能对自己的信息进行查询、也能对公司部门的信息进行查询;
④信息的管理:公司的管理人员通过对信息的查询,做出相应的决策,并对信息进行定期的维护和更新。
(3)安全性与完整性要求。
员工的员工编号、部门的部门编号、项目的项目编号均不能为空且必须唯一;员工、部门名称、项目名称均不能为空。普通员工仅能对自己以及公司的信息进行查询,仅有数据库管理人员能对公司数据库中的数据进行增加、删除、修改、更新等操作。
2.2 系统数据流程分析
1)基本业务调查通过查阅资料和与公司人员交流,得出的业务基本流程如图2.1所示:
图2.1.基本信息录入流程
通过各个管理部门对基本信息进行登记和审核,待审核合格之后录入公司数据库。
待数据库建成之后需要对数据库进行定期的维护和更新,并把新的数据存入数据库,其流程如图2.2.所示:
图2.2.数据更新流程图
对于每个项目,先要对项目进行申报、策划,得到批准之后,再分配相关人员配合参与,并把参与信息录入数据库,其流程如图2.3.所示:
图2.3.项目申报流程图
2)数据流程图
根据对公司人事信息管理的调查和了解,以及查阅资料了解相关业务之后,对数据的流动及传输做了一定规划,设计出来的数据流程图如图2.4所示:
图2.4 人事管理数据流程图
2.3 数据字典
在数据流程图中,数据信息和处理过程需要通过数据字典才能描述清楚,因此在数据字典中主要对数据流程图中的数据流、数据存储和处理过程给出更详细、更准确的说明。
1)数据流定义
可以通过表格的形式给出数据流程图的主要数据流,如表2.1所示。
表2.1 人事管理系统主要数据流定义
序号 名称 位置 结构定义 员工编号+员工+性别+健康状况+职称+照片+联系方式+学历+毕业院校+所属部门+参加工最大数据流量 1 员工信息 01 5000次/天
作时间 2 部门信息 02 部门编号+部门名称+部门+部门地址+部门主管 项目编号+项目名称+项目负责人+开工日期+结束日期 员工编号+员工+日期+出勤状况+缺勤原因+备注 项目编号+员工编号+项目主管 员工编号+员工类型+职称+参与项目+出勤状况+奖励类别 员工编号+转动类型+转动时间 奖惩类别+奖惩名称+奖惩记录 1000次/天 3 项目信息 03 1000次/天 4 员工出勤信息 04 10000次/天 5 6 项目参与信息 工资信息 05 06 1000次/天 10000次/天 7 8 转入转出 奖惩信息 07 08 100次/天 1000次/天 2)数据存储定义
可以采用如下表格的形式给出系统的主要数据定义,如表2.2所示。
表2.2 人事管理系统主要数据存储定义
编号 名称 输入 输出 员工的各种信息 数据量 存取频度 存取方式 说明 D1 员工记录 员工信息 联机处员工号唯理;检索一且非空 25000条 1000次/天 和更新;随即检索 25000条 100次/天 联机处部门号唯理;检索一且非空 和更新;随即检索 D2 部门记录 部门信息 部门的各种信息
D3 项目记录 项目信息 各种项目信息 25000条 100次/天 联机处项目编号理;检索唯一且非和更新;空 随即检索 联机处理;检索和更新;随即检索 员工号为员工记录中的员工号,记录不允许为空 员工编号和项目编号分别参照员工记录和项目记录 员工号参照员工记录,工资与出勤记录项目记录等因素有关,且员工的工资因是否在职而异 D4 员工出勤记录 员工出勤信息 员工是否出勤 25000条 10000次/天 D5 项目参与记录 项目参与信息 员工各自参与的项目 25000条 5000次/天 联机处理;检索和更新;随即检索 D6 工资记录 员工号及各项相关因素 员工各自的工资 25000条 5000次/天 联机处理;检索和更新;随即检索 D7 转入转出记录 员工的转入转出信息 员工转入转出的部门,以及员工从公司转入或转出的信息 员工奖惩记录 25000条 500次/天 联机处员工编号理;检索号参照员和更新;工记录 随即检索 D8 奖惩记录 员工奖惩信息 25000条 1000次/天 联机处员工编号理;检索参照员工和更新;记录 随即检索
3)处理过程
可以采用如下表格的形式给出系统的主要处理过程定义,如表2.3所示。
表2.3 人事管理系统主要处理过程定义
序号 P1 P2 处理过程名称 人员管理 部门管理 输入 人员情况 部门情况 输出 人员记录 部门记录 处理说明 对公司人员统一编码,将人员信息数据化,存储入员工记录表中 对公司部门统一编码,将部门信息数据化,存储入部门记录表中 对项目统一编码,将项目信息数据化,存储入项目记录表中 将出勤信息数据化,存储入出勤记录表中 P3 项目管理 项目情况 项目记录 P4 P5 员工出勤管理 项目参与管理 员工出勤情况 项目参与情况 出勤记录 项目参与记录 将项目参与信息数据化,存储入项目参与记录表中 员工工资记录 将员工工资信息数据化,存储入工资记录表中 员工转入转出记录 员工的奖惩记录 将员工转入转出信息数据化,存储入转入转出记录表中 将员工的奖惩信息数据化 P6 P7 工资管理 转入转出管理 员工工资情况 员工转入转出情况 员工的奖惩情况 P8 奖惩管理 3 概念模型设计
3.1 概念模型设计的方法和步骤
打开软件PowerDesigner,使用其辅助设计概念模型: 1) 在PowerDesigner主页面下新建一个概念模型;
2) 在设计页面下点击实体图标,按照需求分析的结果建立实体,
并一一对实体的属性进行设置;
3) 在实体和属性建立完成之后,建立各个实体之间的联系。在所有实体、属性与实体之间的联系建立好后,基本的概念模型便设计好了。设计的结果如图3.1所示:
图3.1 人事管理系统概念模型图
3.2 系统概念模型
根据系统的需求分析所得到的概念模型,用E-R图表示如图3.2所示:
图3.2 人事信息管理E-R模型图
4逻辑模型设计
4.1 逻辑模型设计的方法
在软件PowerDesigner中,在原本已建立好的概念模型下,对概念模型进行检查,检查实体的名字、编码,关系的名字、编码是否唯一,如果不唯一,则将它们改唯一。之后,在概念模型的主页面之下,点击Tool按钮,选择Generate Logical Data Model命令进行设置,使概念模型转化为逻辑模型。生成的逻辑模型如图4.1所示:
图4.1 人事管理逻辑模型图
4.2 逻辑模型实现
关系模式:
员工(员工编号,员工,性别,健康状况,职称,照片,联系方式,学历,毕业院校,所属部门,参加工作时间)
部门(部门编号,部门名称,部门,部门地址,部门主管) 出勤(员工编号,员工,日期,出勤状况,缺勤原因,备注) 项目(项目编号,项目名称,项目负责人,开工日期,结束日期) 工资(员工编号,员工类型,职称,参与项目,出勤状况,奖励类别) 奖罚(员工编号,奖惩名称,奖罚记录) 转入转出(员工编号,转动类型,转动时间) 项目参与信息(项目编号,员工编号,项目主管) 奖罚情况(员工编号,奖罚名称) 项目管理(项目编号,部门编号) 4.3 数据完整性约束定义
根据上面的关系模式,数据库的完整性约束如下所示: 1)实体完整性约束 员工(员工编号) 部门(部门编号) 出勤(员工编号,日期) 项目(项目编号) 工资(员工编号)
奖罚(员工编号,奖罚名称) 转入转出(员工编号)
项目参与信息(项目编号,员工编号) 奖罚情况(员工编号,奖罚名称) 项目管理(项目编号,部门编号) 员工、部门名称必须非空 2)参照完整性约束
出勤(员工编号) 参照:员工.员工编号 工资(员工编号) 参照:员工.员工编号 奖罚(员工编号) 参照:员工.员工编号 转入转出(员工编号) 参照:员工.员工编号
项目参与信息(项目编号,员工编号) 参照:员工.员工编号,项目.项目编号
奖罚情况(员工编号) 参照:员工.员工编号
项目管理(项目编号,部门编号) 参照:项目.项目编号,部门.部门编号
3)用户自定义完整性约束
员工表中,员工编号必须以Y开头,后面根7位数字; 部门表中,部门编号必须以D开头,后面跟5位数字; 项目表中,项目编号必须以P开头,后面根5位数字; 项目表中,起始日期必须早于截止日期
5 物理数据库模型设计与实现
5.1 物理数据库模型的图示
对之前已经生成的CDM模型进行检查,待检查完毕之后,在CDM主页面选择Tool中的Generate Phsical Data Model命令进行设置,待设置完成后,点击确定按钮,生成PDM。如图5.1所示:
图5.1 人事信息管理物理模型图
5.2 物理数据库模型的详细表示
表格形式表示:
图5.2.1员工表
图5.2.2部门表
图5.2.3工资表
图5.2.4出勤表
图5.2.5转入转出表
图5.2.6奖惩表
图5.2.7项目表
图5.2.目信息表
图5.2.9奖罚情况表
图5.2.10项目管理表
5.3 物理数据库模型的实现
生成具体数据库的SQL语句:
if exists (select 1
from sys.sysreferences r join sys.sysobjects o on (o.id =
r.constid and o.type = 'F')
where r.fkeyid = object_id('Relationship_4') and o.name = 'FK_RELATION_RELATIONS_JIANGCHE') alter table Relationship_4
drop constraint FK_RELATION_RELATIONS_JIANGCHE go
if exists (select 1
from sys.sysreferences r join sys.sysobjects o on (o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('Relationship_4') and o.name = 'FK_RELATION_RELATIONS_YUANGONG') alter table Relationship_4
drop constraint FK_RELATION_RELATIONS_YUANGONG go
if exists (select 1
from sys.sysreferences r join sys.sysobjects o on (o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('Relationship_6') and o.name = 'FK_RELATION_RELATIONS_BUMENXIN') alter table Relationship_6
drop constraint FK_RELATION_RELATIONS_BUMENXIN go
if exists (select 1
from sys.sysreferences r join sys.sysobjects o on (o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('Relationship_6') and o.name = 'FK_RELATION_RELATIONS_XIANGMUX') alter table Relationship_6
drop constraint FK_RELATION_RELATIONS_XIANGMUX go
if exists (select 1
from sys.sysreferences r join sys.sysobjects o on (o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('chuqinxinxi') and o.name =
'FK_CHUQINXI_RELATIONS_YUANGONG') alter table chuqinxinxi
drop constraint FK_CHUQINXI_RELATIONS_YUANGONG go
if exists (select 1
from sys.sysreferences r join sys.sysobjects o on (o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('gongzixinxi') and o.name = 'FK_GONGZIXI_RELATIONS_YUANGONG') alter table gongzixinxi
drop constraint FK_GONGZIXI_RELATIONS_YUANGONG go
if exists (select 1
from sys.sysreferences r join sys.sysobjects o on (o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('yuangongxixi') and o.name = 'FK_YUANGONG_RELATIONS_BUMENXIN') alter table yuangongxixi
drop constraint FK_YUANGONG_RELATIONS_BUMENXIN go
if exists (select 1
from sys.sysreferences r join sys.sysobjects o on (o.id = r.constid and o.type = 'F')
where r.fkeyid = object_id('zhuanruzhuanchu') and o.name = 'FK_ZHUANRUZ_RELATIONS_YUANGONG') alter table zhuanruzhuanchu
drop constraint FK_ZHUANRUZ_RELATIONS_YUANGONG go
if exists (select 1
from sysindexes
where id = object_id('Relationship_4') and name = 'Relationship_5_FK' and indid > 0 and indid < 255)
drop index Relationship_4.Relationship_5_FK go
if exists (select 1
from sysindexes
where id = object_id('Relationship_4') and name = 'Relationship_4_FK' and indid > 0 and indid < 255)
drop index Relationship_4.Relationship_4_FK go
if exists (select 1
from sysobjects
where id = object_id('Relationship_4') and type = 'U') drop table Relationship_4 go
if exists (select 1
from sysindexes
where id = object_id('Relationship_6') and name = 'Relationship_8_FK' and indid > 0 and indid < 255)
drop index Relationship_6.Relationship_8_FK go
if exists (select 1
from sysindexes
where id = object_id('Relationship_6') and name = 'Relationship_7_FK' and indid > 0 and indid < 255)
drop index Relationship_6.Relationship_7_FK go
if exists (select 1
from sysobjects
where id = object_id('Relationship_6') and type = 'U') drop table Relationship_6 go
if exists (select 1
from sysobjects
where id = object_id('bumenxinxi') and type = 'U') drop table bumenxinxi go
if exists (select 1
from sysindexes
where id = object_id('chuqinxinxi') and name = 'Relationship_2_FK' and indid > 0 and indid < 255)
drop index chuqinxinxi.Relationship_2_FK go
if exists (select 1
from sysobjects
where id = object_id('chuqinxinxi') and type = 'U') drop table chuqinxinxi go
if exists (select 1
from sysindexes
where id = object_id('gongzixinxi') and name = 'Relationship_1_FK' and indid > 0 and indid < 255)
drop index gongzixinxi.Relationship_1_FK go
if exists (select 1
from sysobjects
where id = object_id('gongzixinxi') and type = 'U') drop table gongzixinxi go
if exists (select 1
from sysobjects
where id = object_id('jiangchengxinxi') and type = 'U') drop table jiangchengxinxi go
if exists (select 1
from sysobjects
where id = object_id('xiangmucanyu') and type = 'U') drop table xiangmucanyu go
if exists (select 1
from sysobjects
where id = object_id('xiangmuxinxi') and type = 'U') drop table xiangmuxinxi go
if exists (select 1
from sysindexes
where id = object_id('yuangongxixi') and name = 'Relationship_6_FK' and indid > 0 and indid < 255)
drop index yuangongxixi.Relationship_6_FK go
if exists (select 1
from sysobjects
where id = object_id('yuangongxixi') and type = 'U') drop table yuangongxixi go
if exists (select 1
from sysindexes
where id = object_id('zhuanruzhuanchu') and name = 'Relationship_3_FK' and indid > 0 and indid < 255)
drop index zhuanruzhuanchu.Relationship_3_FK go
if exists (select 1
from sysobjects
where id = object_id('zhuanruzhuanchu') and type = 'U') drop table zhuanruzhuanchu go
/*==============================================================*/
/* Table: Relationship_4 */ /*==============================================================*/
create table Relationship_4 (
jiangchengmingcheng char(40) not null, yuanNumber char(8) not null, constraint PK_RELATIONSHIP_4 primary key (jiangchengmingcheng, yuanNumber) ) go
/*==============================================================*/
/* Index: Relationship_4_FK */
/*==============================================================*/
create index Relationship_4_FK on Relationship_4 ( jiangchengmingcheng ASC ) go
/*==============================================================*/
/* Index: Relationship_5_FK */ /*==============================================================*/
create index Relationship_5_FK on Relationship_4 ( yuanNumber ASC ) go
/*==============================================================*/
/* Table: Relationship_6 */ /*==============================================================*/
create table Relationship_6 (
bumenNumber char(6) not null, xiangmuNumber char(6) not null, constraint PK_RELATIONSHIP_6 primary key (bumenNumber, xiangmuNumber) ) go
/*==============================================================*/
/* Index: Relationship_7_FK */ /*==============================================================*/
create index Relationship_7_FK on Relationship_6 ( bumenNumber ASC )
go
/*==============================================================*/
/* Index: Relationship_8_FK */ /*==============================================================*/
create index Relationship_8_FK on Relationship_6 ( xiangmuNumber ASC ) go
/*==============================================================*/
/* Table: bumenxinxi */ /*==============================================================*/
create table bumenxinxi (
bumenNumber char(6) not null, bumenName char(10) not null, bumenPhone char(9) null, bumenAddress char(16) null, bumenzhuguan char(8) null, constraint PK_BUMENXINXI primary key nonclustered (bumenNumber) ) go
/*==============================================================*/
/* Table: chuqinxinxi */ /*==============================================================*/
create table chuqinxinxi (
chuyuanNumber char(8) not null, riqi datetime not null, yuanNumber char(8) not null, chuqinzhuangkuang char(4) null,
queqinyuanyin char(4) null, beizhu char(20) null,
constraint PK_CHUQINXINXI primary key nonclustered (chuyuanNumber, riqi) ) go
/*==============================================================*/
/* Index: Relationship_2_FK */ /*==============================================================*/
create index Relationship_2_FK on chuqinxinxi ( yuanNumber ASC ) go
/*==============================================================*/
/* Table: gongzixinxi */ /*==============================================================*/
create table gongzixinxi (
yuangongbianhao4 char(8) not null, yuanNumber char(8) not null, yuangongleixing char(4) null, zhicheng4 char(10) null, canyuxiangmu4 char(8) null, chuqin char(2) null, jiangcehng char(8) null, jiesuanshiujian datetime null, constraint PK_GONGZIXINXI primary key nonclustered (yuangongbianhao4) ) go
/*==============================================================*/
/* Index: Relationship_1_FK */ /*==============================================================*/
create index Relationship_1_FK on gongzixinxi ( yuanNumber ASC ) go
/*==============================================================*/
/* Table: jiangchengxinxi */ /*==============================================================*/
create table jiangchengxinxi (
jiangchengleibie char(4) null, jiangchengmingcheng char(40) not null, jiangfaqingkuang char(20) null,
constraint PK_JIANGCHENGXINXI primary key nonclustered (jiangchengmingcheng) ) go
/*==============================================================*/
/* Table: xiangmucanyu */ /*==============================================================*/
create table xiangmucanyu (
xiangmubianhao3 char(6) not null, xiangmuzhuguan3 char(8) null, xiangmucanyubumen char(6) null,
constraint PK_XIANGMUCANYU primary key nonclustered (xiangmubianhao3) ) go
/*==============================================================*/
/* Table: xiangmuxinxi */ /*==============================================================*/
create table xiangmuxinxi (
xiangmuNumber char(6) not null, xiangmuName char(20) not null, xiangmufuzeren char(8) null, qishiriqi datetime null, jiezhiriqi datetime null,
constraint PK_XIANGMUXINXI primary key nonclustered (xiangmuNumber) ) go
/*==============================================================*/
/* Table: yuangongxixi */ /*==============================================================*/
create table yuangongxixi (
yuanNumber char(8) not null, bumenNumber char(6) not null, yuanName char(12) not null, sex char(2) not null, heathy char(2) null, zhicheng char(10) not null, photo binary(1) null, lianxi char(11) null, xueli char(6) null, school char(20) null, bumen char(6) null, shijian datetime null, canyuxiangmubianhao char(6) null,
constraint PK_YUANGONGXIXI primary key nonclustered (yuanNumber) ) go
/*==============================================================*/
/* Index: Relationship_6_FK */ /*==============================================================*/
create index Relationship_6_FK on yuangongxixi ( bumenNumber ASC ) go
/*==============================================================*/
/* Table: zhuanruzhuanchu */ /*==============================================================*/
create table zhuanruzhuanchu (
yuangongbianhao5 char(8) not null, yuanNumber char(8) null, zhuandongleixing char(8) null, zhuanchubumen char(6) null, zhuanrubumen char(6) null, zhuandongshijian datetime null,
constraint PK_ZHUANRUZHUANCHU primary key nonclustered (yuangongbianhao5) ) go
/*==============================================================*/
/* Index: Relationship_3_FK */ /*==============================================================*/
create index Relationship_3_FK on zhuanruzhuanchu ( yuanNumber ASC ) go
alter table Relationship_4
add constraint FK_RELATION_RELATIONS_JIANGCHE foreign key (jiangchengmingcheng)
references jiangchengxinxi (jiangchengmingcheng) go
alter table Relationship_4
add constraint FK_RELATION_RELATIONS_YUANGONG foreign key (yuanNumber)
references yuangongxixi (yuanNumber) go
alter table Relationship_6
add constraint FK_RELATION_RELATIONS_BUMENXIN foreign key (bumenNumber)
references bumenxinxi (bumenNumber) go
alter table Relationship_6
add constraint FK_RELATION_RELATIONS_XIANGMUX foreign key (xiangmuNumber)
references xiangmuxinxi (xiangmuNumber) go
alter table chuqinxinxi
add constraint FK_CHUQINXI_RELATIONS_YUANGONG foreign key (yuanNumber)
references yuangongxixi (yuanNumber) go
alter table gongzixinxi
add constraint FK_GONGZIXI_RELATIONS_YUANGONG foreign key (yuanNumber)
references yuangongxixi (yuanNumber) go
alter table yuangongxixi
add constraint FK_YUANGONG_RELATIONS_BUMENXIN foreign key (bumenNumber)
references bumenxinxi (bumenNumber) go
alter table zhuanruzhuanchu
add constraint FK_ZHUANRUZ_RELATIONS_YUANGONG foreign key (yuanNumber)
references yuangongxixi (yuanNumber) go
生成的表如图5.3.1所示:
图5.3.1 在具体数据库中生成的人事管理数据库中的表
5.3.2 生成的部门表
总结
参考文献
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- igat.cn 版权所有 赣ICP备2024042791号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务