《会议管理系统数据库设计文档.docx》由会员分享,可在线阅读,更多相关《会议管理系统数据库设计文档.docx(25页珍藏版)》请在三一办公上搜索。
1、会议管理系统数据库计说明书编写:非常6+2 审核:日期:2013-7-3 日期:1批准:日期:受控状态:是发布版次:5.0 编号:日期:2013-7-31变更记录日期版本变更说明作者2013-7-171.0初始文档匿名2013-7-252.0升级文档匿名2013-7-293.0升级文档匿名2013-7-304.0升级文档匿名2013-7-315.0最终文档匿名签字确认目录1 引言1-41-1预期的读者1-41.2数据库说明1-41-3目的和作用1-42 数据库设计2-42.1 抽象数据对象2-42.1.1 系统主要业务分析 2-42.1.2 需求分析参考2-52.2 系统物理结构设计2-52.
2、3 数据库逻辑设计2-62.3.1 数据库设计命名规范2-52.3.2 数据库表名汇总2-62.3.3 数据库表结构设计 2-62.4 存储过程设计 2-142.5 触发器设计2-152.6 Job 设计2-153 数据字典设计错误!未定义书签。1引言1.1 预期的读者主要为本公司以及承包方的阅读者,如设计人员、开发人员等。有时可以包括客户方的阅读者,如: 业务人员、系统管理人员等。1.2 数据库说明会议管理系统采用的时当前流行的企业级数据库oracle,使用的版本是9i。设计的数据库全局 数据库名为icss,开发用的表空间名是test,操作的用户名为test,密码为test。1.3 目的和作
3、用将业务分析,系统设计中对信息的描述进一步分析并加以总计,抽象出数据集合(数据库表)。对 数据集合做进一步分析,确定集合之间的关系并最终形成数据库物理模型,以便开发人员建立物理数据 库。2数据库设计2.1抽象数据对象2.1.1系统主要业务分析根据物流系统的业务流程描述,我们大致可以从中抽象出几个数据集合,如:普通用户、会议 申请、会议室管理、设备管理、会议管理按照业务及系统功能简单总结数据对象:用户会议申请信息会议审批会议设备2.1.2需求分析参考根据系统需求分析内容进一步确定数据对象。由于系统需求分析中考虑到会议室和会议设备间有 一定的区别和联系,即会议室一般包含固定设备和移动设备,两者之间
4、并不是并列关系而是所属关系,所以将会议室默认含有固定设备,这样,设备只有移动设备分开,并提出单独的信息维护功能,数据 库对象也进一步细化将会议设备分成,会议室和相关设备。会议申请和会议审批操作的都是相同对象所以将两个数据对象进行合并,其他数据对象没有变化。总结数据对象:用户信息会议信息会议室会议设备2.2数据库结构设计根据系统的分布式部署设计,数据库将部署到一部独立的计算机中。根据前期的分析,系统将有大量的数据存放入数据库。预留数据库空间500m日增长约3m日志空间1G日增长5m。数据库位置:*oracle9ipath*/n2ms/db/ 日志位置:*oracle9ipath*/n2ms/lo
5、g/2.3数据库设计命名规范1,表名命名规则本数据库使用的表名一律采用有意义的小写英文字符命名,考虑将来编码方便,表 名不使用-连接相关2,表项命名规则本数据库各个表的每个字段,依照表名命名规则,全部使用有意义的小写英 文字符命名,字段名不适用-连接相关字符,方便编码书写。2.4数据库逻辑设计表设计中应注意的问题:1 对于字符类型的字段,要仔细确认字段的可能长度。在oracle数据库设计中,一般来说,对于 定长的字符数据字段,取字符类型(char),对于不定长的,取变长字符类型(varchar)。2.对于以分类形式出现的字段,建议不使用字符类型,而使用数字类型。如:货物是否配送为是或 (和)否
6、;如果用字符类型,则将这些字符串需要入库;如果使用数字类型分别用1、0代表高职、中 职、低职,则入库的是数字信息,从程 序编写的角度考虑,后者更好维护一些,主要体现在如果是多语 言版本时,我们不需要在程序中将这些字符串信息进行判断处理。2.4.1数据库表名汇总表2-1数据库表数据库表名中文名文字说明meet_app会议申请信息保存所开会议的基本信息meet_room会议室保存会议室情况的相关信息facilty_meet设备信息保存会议设备的相关信息Equipment_stype设备类型保存相关设备类型信息users_inf用户信息保存系统用户的基本信息power_info权限信息保存系统的权限
7、信息role_u角色保存相关角色信息dept_u部门信息保存相关部门信息e_mail邮件信息保存邮件信息file_inf文件信息保存相关文件信息2.4.2数据库表结构设计242.1逻辑表结构Meet_app表 2-2 meet_app 表项中文英文数据类型可否空初始值说明会议信息主键meet_idNumber否主键,流水自增会议主题meet_titleVariable characters(30)可主要内容meet_contentVariable characters(300)可会议开始时间start_timeDate & Time可会议结束时间end_timeDate & Time可与会人数
8、meet_ numLong float可审批状态meet_stateVariable characters(10)可审批意见meet_ideaVariable characters(100)可meet_room表 2-3 meet_room 表项中文英文数据类型可否空初始值说明会议室主键meetroom_idNumber否主键,流水自增会议室名称meetroom_nameVariable char(30)会议室地址meetroom_addrVariable characters(30)可可用状态possib_stateShort integer可目前状态now_stateShort integ
9、er可容纳人数meetroom numNumber可facilty_meet表 2-4 facilty_meet 表项中文英文数据类型可否空初始值说明设备主键facility_idNumber否主键,流水自增设备名称facility_nameVariable characters (40)可设备购入时间buy_timeDate可占用状态on_stateNumber (10)可可用状态posib_stateShort integer可设备标识facility_tagVariable characters (10)否user_i nfo表 2-5 user_info 表项中文英文数据类型可否空初始
10、值说明用户主键us_idNumber否主键,流水自增用户名称us_nameVariable characters (30)可用户登陆账号us_accountVariable characters (30)可所属部门us_departmentVariable characters (30)可用户密码us_pswVariable characters (30)可powernfo表 2-6 power j nfo 表项中文英文数据类型可否空初始值说明权限主键power_idNumber否主键,流水自增权限描述power_describeVariable characters (30)可e_mail表
11、2-7 e_mail表项中文英文数据类型可否空初始值说明邮件主键mail_idNumber否主键,流水自增主题topicVariable characters (30)可发送时间sendtimeDate可内容mail contentVariable characters可role表2-8 role_u表项中文英文数据类型可否空初始值说明角色主键role_idNumber否主键,流水自增角色名字role_nameVariable characters (30)可dept_u表2-9dept_u表项中文英文数据类型可否空初始值说明部门主键dept_idNumber否主键,流水自增部门名字dept_
12、nameVariable characters (30)可file_i nf表 2-10 file_inf 表项可否中文英文数据类型初始值说明空文件信息主键flileinf_idNumber否主键,流水自增文件大小file_sizeLong float可Variablecharacters文件名称file_name(30)可文件格式file_formatVariable characters (10)可图中“”表示多对一关系,三叉线表示对应的多方表,多对多应该为242.2数据库表逻辑ER图部门Relationshi部门 id Number部门名称Variable characters (30)
13、Relationship 2权限Variable characters (30)Variable characters (30)nship_6 +姓名 账号 密码部门Variable characters (30)Variable characters (30)Variable characters (30)Variable characters (30)Idee_Relationship_1用户-邮Relationship_4.类型类型id类型名称Relationsiip_4Relationshif0,n会议申请会议申请 id Number会议圭题Variable characters (3
14、0)主要内容Variable characters (300)会议开始时间Date会议结束时间Date与会人数Number审批意见Variable characters (100)宙批状态Short integerdentifier lRelationship_6会议申请-设备Relationship 5Relationship_11RelationRelat onsh_p_7设备设备 id Number设备名称Variable characters (30)占用状态Short integer可用状态Short integer购入时间Date设备标识Variable characters (1
15、0)会议室会议室id Number会议室名称Variable characters (30)会议室地址Variable characters (30)可用状态Short integer容纳人数Number目前状态Short integerldenlilier 1文件信息文件信息主键 Number文件大小Long float文件名称Variable characters(30)文件格式Variable characters(10)Identifier_1 2.4.2.3表之间的关联设计在数据库ER逻辑模型的基础上确定ER物理模型,通过主外键的约束明确表之间的关系。该物理模型可直接映射到数据库中进
16、行物理操作,以便据此建立数据库结构。ER物理模型如下:物理模型字段表如下:Tablecolu mnCodedescripti on会议室会议室主键meetroom_id主键索引会议室名称meetroom_ name会议室地址meetroom_addr可用状态possib_state容纳人数meetro on_num目前状态no w_state会议申请会议信息主键meet_id主键索引会议室idmeetroom_id由会议室信息表引用的外键会议主题meet_title主要内容meet_c ontent与会人数meet- num会议开始时间start time会议结束时间end time审批意见m
17、eet-idea对应建议修改的会议申请要写明原因,如: 会议内容欠妥、申请会议室冲突等审批状态meet_state会议申请有未审批、审批通过、建 议修改三种状态设备主键facility id主键索引设备名称facility name会议设备类型主键ft id由设备类型表引用的外键当前状态no w-state可用状态posib_state购入时间buy_time设备标识facility_tag标志移动还是固定设备设备类型类型主键ft_id主键索引类型名称ft n ame用户信息用户主键us_id主键索引部门iddept_id姓名us_n ame账号us_account密码us_psw部门us_d
18、epartme nt文件信息文件信息主键file id主键索引会议信息主键meet_id由会议信息表引用的外键文件名称file name文件大小file size文件格式file_type部门部门主键dept_id主键索引部门名称dept_ name权限信息权限主键power id主键索引权限描述power describe角色信息角色主键role_id主键索引角色名字role-n amerole_power角色主键role id权限主键power id邮件邮件idmail_id主键主题topic发送时间sen dtime内容mail c on te nt会议申请设备会议申请idmeet_id
19、主键索引设备idfacility id主键索引用户一邮件用户idus id邮件idmail id会议申请 一用户会议申请idmeet id用户idus id申请人idappop id外键关联说明:表2-7外键关联说明描述外键引外键字段名关联表畏关说明表名用表表系文件信息会议申请会议信息主键vfk不是多对一个会议信息可以有多个文件信息会议申请用户信息用户主键是多对该表是用户信息表与会议室表多对多关系的关系表,每个关系就是一个会议申请会议室会议室主键多对会议设备会议室会议室主键是多对亥表室会议室与设备类型多对多的一个关系表,每一个关系代表1设备没备类型类型主键多对权限信息角色角色主键不是多对多一个
20、角色可拥有多个权限,一个权限可以给多个角色。邮件用户信息用户主键是多对多一个用户可以发送多个邮件,一个邮件可以被多个用户接受242.4难点说明:会议设备与会议申请的复杂关系由ER物理模型局部表关系如下“图2-3物理ER图局部1会议申请RelatioRelationship 6会议申请id会 议室id会议主 题主要内容 会议开始时间 会议结束时间 与会人数审批 意见审批状态n umeric n umeric varchar(30) varchar(300) date date n umeric varchar(100) smalli ntvpknship_6vfk会议申请-设备会议申请 id n
21、 umeric 设备 idn umeric Relationship_6会议室会议室id numeric设备会议室名称 varchar(30) 会议室地址 varchar(30) 可用状态smalli nt容纳人数numeric目前状态 small int设备 id numeric类型 id numeric会议室 id numeric设备名称varchar(30) 占用状态smalli nt 可用状态smalli nt 购入时间date设备标识varchar(10)图2-3物理ER图局部1会议申请与会议室是多对一的关系,会议室和设备是一对多的关系,系统需求中有些设备不属于任何现有会议室,这些设
22、备不会象其他设备那样成组的与会议申请对应,而是具有单独的对应关系。由于从局部图中可以看出,会议申请和移动设备间的对应关系是多对多关系。系统需求中,移动设备不属于任何会议室,这些设备不会像固定设备那样成组的与会议申请相对应。会议室和会议申请是一对多的关系,会议室和设备间是一对多的关系,会议申请和设备是多对多关 系。复杂关系成因从上面两种情况,会议室和会议申请的关系是指的是和移动设备和固定设备都有这种关系,而会议申请和会议设备的关系是指的移动设备的关系,一个会议申请多个移动设备,而移动设备能被多个会议申请。本来应将移动设备和移动设备分开,而为了减少冗余,将其合为一个表,从而减少开发麻烦。这就在不影
23、响业务功能的情况下简化了一张表。2.5存储过程设计存储过程是一组预先定义并编译好的SQL语句,可以接受参数、返回状态值和参数值,并可以嵌套调用。使用存储过程可以改变SQL语句的运行性能,提高其执行效率。存储过程还可用做一种安全机制,使用户通过它访问未授权的表或视图。在本系统中可协助应用服务器完成日志记录功能,及当用户进行个中数据库CURD操作室记录相应信息到到日志表中。举例:create or replace procedure loginsertout int ,tablename in string ,opflag out int )(optype in string , optime i
24、n string ,userid in2.6is begininsertinto logtablevalues (power_seq.nextval ,optime,optype,userid,tablename);select power_seq.currval into opflagfrom dual;end loginsert;触发器设计触发器是一种特殊的存储过程,当表中的数据被修改时,由系统自动执行。使用触发器可以实施更为复杂的的数据完整性约束。举例:create or replace trigger autodelafter delete on roomfor each rowdeclare-local variables herebegindelete facility f where f.rid=:old.id;end autodel;2.7 Job设计(定时触发功能)数据库系统提供了 Job功能,该功能可以用来解决需要定期处理商业数据的问题。2-16