1、1-1编写: 匿名 日期:2013-7-31审核: 日期:批准: 日期:受控状态: 是 发布版次:5.0 日期:2013-7-31编号:会议管理系统数据库计说明书1-2变更记录日期 版本 变更说明 作者2013-7-17 1.0 初始文档 匿名2013-7-25 2.0 升级文档 匿名2013-7-29 3.0 升级文档 匿名2013-7-30 4.0 升级文档 匿名2013-7-31 5.0 最终文档 匿名签字确认职务 姓名 签字 日期1-3目 录1 引言 .41.1 预期的读者 .41.2 数据库说明 .41.3 目的和作用 .42 数据库设计 .42.1 抽象数据对象 .42.1.1 系
2、统主要业务分析 .42.1.2 需求分析参考 .52.2 系统物理结构设计 .52.3 数据库逻辑设计 .52.3.1 数据库设计命名规范 .62.3.2 数据库表名汇总 .72.3.3 数据库表结构设计 .72.4 存储过程设计 .122.5 触发器设计 .122.6 JOB设计 .123 数据字典设计 .132-41 引言1.1 预期的读者主要为本公司以及承包方的阅读者,如设计人员、开发人员等。有时可以包括客户方的阅读者,如:业务人员、系统管理人员等。1.2 数据库说明会议管理系统采用的时当前流行的企业级数据库 oracle,使用的版本是9i。设计的数据库全局数据库名为 icss,开发用的
3、表空间名是 test,操作的用户名为 test,密码为 test。1.3 目的和作用将业务分析,系统设计中对信息的描述进一步分析并加以总计,抽象出数据集合(数据库表)。对数据集合做进一步分析,确定集合之间的关系并最终形成数据库物理模型,以便开发人员建立物理数据库。2 数据库设计2.1 抽象数据对象2.1.1 系统主要业务分析根据物流系统的业务流程描述,我们大致可以从中抽象出几个数据集合,如:普通用户、会议申请、会议室管理、设备管理、会议管理 按照业务及系统功能简单总结数据对象: 用户 会议申请信息 会议审批 会议设备2-52.1.2 需求分析参考根据系统需求分析内容进一步确定数据对象。由于系统
4、需求分析中考虑到会议室和会议设备间有一定的区别和联系,即会议室一般包含固定设备和移动设备,两者之间并不是并列关系而是所属关系,所以将会议室默认含有固定设备,这样,设备只有移动设备分开,并提出单独的信息维护功能,数据库对象也进一步细化将会议设备分成,会议室和相关设备。会议申请和会议审批操作的都是相同对象所以将两个数据对象进行合并,其他数据对象没有变化。总结数据对象: 用户信息 会议信息 会议室 会议设备2.2 数据库结构设计根据系统的分布式部署设计,数据库将部署到一部独立的计算机中。根据前期的分析,系统将有大量的数据存放入数据库。预留数据库空间 500m,日增长约3m,日志空间 1G,日增长 5
5、m。数据库位置:*oracle9ipath*/n2ms/db/日志位置:*oracle9ipath*/n2ms/log/2.3 数据库设计命名规范1,表名命名规则本数据库使用的表名一律采用有意义的小写英文字符命名,考虑将来编码方便,表名不使用-连接相关2,表项命名规则本数据库各个表的每个字段,依照表名命名规则,全部使用有意义的小写英文字符 命名,字段名不适用-连接相关字符,方便编码书写。2-62.4 数据库逻辑设计表设计中应注意的问题:1对于字符类型的字段,要仔细确认字段的可能长度。在 oracle数据库设计中,一般来说,对于定长的字符数据字段,取字符类型(char),对于不定长的,取变长字符
6、类型(varchar)。2对于以分类形式出现的字段,建议不使用字符类型,而使用数字类型。如:货物是否配送为是或(和)否;如果用字符类型,则将这些字符串需要入库;如果使用数字类型分别用 1、0 代表高职、中职、低职,则入库的是数字信息,从程序编写的角度考虑,后者更好维护一些,主要体现在如果是多语言版本时,我们不需要在程序中将这些字符串信息进行判断处理。2.4.1 数据库表名汇总表 2-1 数据库表数据库表名 中文名 文字说明meet_app 会议申请信息 保存所开会议的基本信息meet_room 会议室 保存会议室情况的相关信息facilty_meet 设备信息 保存会议设备的相关信息Equip
7、ment_stype 设备类型 保存相关设备类型信息users_inf 用户信息 保存系统用户的基本信息power_info 权限信息 保存系统的权限信息role_u 角色 保存相关角色信息dept_u 部门信息 保存相关部门信息e_mail 邮件信息 保存邮件信息file_inf 文件信息 保存相关文件信息2.4.2 数据库表结构设计2-72.4.2.1逻辑表结构 Meet_app表 2-2 meet_app表项中文 英文 数据类型 可否空 初始值 说明会议信息主键 meet_id Number 否 主键,流水自增会议主题 meet_titleVariable characters (30)
8、可主要内容 meet_contentVariable characters (300)可会议开始时间 start_time Date select power_seq.currval into opflag from dual;end loginsert;触发器设计触发器是一种特殊的存储过程,当表中的数据被修改时,由系统自动执行。使用触发器可以实施更为复杂的的数据完整性约束。举例:create or replace trigger autodelafter delete on room for each rowdeclare- local variables herebegindelete facility f where f.rid=:old.id;end autodel;2.7 Job设计(定时触发功能)数据库系统提供了 Job功能,该功能可以用来解决需要定期处理商业数据的问题。2-16