1、xx系统数据库设计说明书132020年4月19日文档仅供参考,不当之处,请联系改正。XXXXXXXXXXXXXXXX项目XXXXXXX系统数据库设计说明书昆明工业职业技术学院宿舍管理系统测试报告数据库设计说明书XXXX股份有限公司XXXX年XX月文档管理信息表项目名称:项目经理:内容摘要:关键字:计划、目标、数据库说明、范围参考文档:创立时间:编写准备人员:审查人员:最新发布日期:最新版本:V1.0文档修订历史版本修订日期描述文档所有者1.0创立和编写摘 要本数据库设计说明书是以XXXX学院-XXXX系统-需求分析说明书为依据,在其需求规定的基础上编写而成。定义总体数据库设计。XXXX学院XX
2、XX系统使用业界普遍使用的面向对象设计思想进行设计,在数据库设计中使用ORM(对象-关系数据库映射)方法进行数据设计和数据关系管理 ,ORM方法以最基本的方式进行数据建模,将数据库中的关系数据映射成为利用程序控制的内存对象,数据的关联关系都交由程序管理和实现,而不在数据库的物理结构中进行设计,从而解决了数据库中关系数据无法直接表示多对多关联和继承关系,以及对象属性和状态变更和数据库物理结构不同步的问题。本数据库说明书在需求分析的基础上进一步明确数据库结构,详细地介绍数据库的各个表结构,为进行后面的实现和测试做准备。目 录摘 要3目 录41.引言51.1.编写目的51.2.定义51.3.参考资料
3、52.外部设计52.1.标识符和状态52.2.使用它的程序62.3.约定62.4.支持软件63.结构设计73.1.物理结构设计73.1.1.系统数据总表73.1.2.具体数据库设计94.运用设计784.1.安全保密设计784.1.1.防止用户直接操作数据库的方法784.1.2.对应用系统的用户口令进行加密784.1.3.对用户进行权限识别和分级784.2.优化791. 引言1.1. 编写目的本说明书在需求分析的基础上进一步明确数据库结构,详细地介绍数据库的各个表结构,为进行后面的实现和测试做准备。本文主要描述XXXX学院XXXX系统的数据库设计,旨在为项目建设提供必要的依据,同时也作为项目验收
4、的依据之一。 1.2. 定义缩写、术语解 释SPP精简并行过程,Simplified Parallel ProcessDD数据库设计,Database DesignPD数据库设计工具, PowerDesigner1.3. 参考资料A.XXXX学院-XXXX系统-需求分析说明书;2. 外部设计2.1. 标识符和状态(1) 表名:T_模块_表标识(2) 视图V_视图标识(3) 存贮过程P_存贮过程标识(4) 函数F_函数标识(5) 触发器tr_(after)ti_(instead)(6) 自定义数据类型ud_(7) Defaultdf_(8) Ruleru_(9) 主键pk_(10) 外键fk_2
5、.2. 使用它的程序XXXX学院XXXX系统。2.3. 约定本系统采用的数据库为ORACLE,版本为11G;数据库设计工具PowerDesigner,版本为16.0。2.4. 支持软件客户端工具:PLSQL Developer,版本:8.5。3. 结构设计3.1. 物理结构设计3.1.1. 系统数据总表3.1.1.1. 系统表序号表名功能说明1233.1.1.2. 基本信息表序号表名功能说明1233.1.2. 具体数据库设计3.1.2.1. 系统表1. 表T_SYS_DICT:数据字典表表名数据库用户主键其它排序字段索引字段序号字段名称数据类型(精度范围)允许为空Y/N唯一Y/N区别度默认值约
6、束条件/说明123Oracle脚本记录数增长量表的并发补充说明4. 运用设计4.1. 安全保密设计4.1.1. 防止用户直接操作数据库的方法经过把关键应用服务器和数据库服务器进行分离,防止用户对数据库服务器的直接操作,保证数据库的安全。4.1.2. 对应用系统的用户口令进行加密在软件系统中,对于数据的保护、业务操作的许可是经过识别用户身份和权限来完成的。用户口令相比较,相同的话系统将该用户的操作权限分配给用户,用户再根据所分配的权限对系统进行操作。由以上过程可知,用户口令在传输过程中容易被窃取泄漏,另外如果数据库被非法进入则其中保存的口令能够被非法查看。因此,在传输过程中和数据库中的口令记录字
7、段不应使用明文传递和保存,应该在口令被传递前对其明文口令使用有效的主流技术对传输数据进行加密部分描述的加密算法进行加密,在加密后传输到系统。系统将用户提交的经过加密的口令数据保存的加密口令进行比较,相一致则进行后续操作。经过以上措施和过程,证了加密口令即使被窃取仍无法得到原始口令。4.1.3. 对用户进行权限识别和分级在宿舍管理系统中,不同的业务不同的人员处理,而且对于不同的操作人员其所能够访问的数据是不同的。为了保障各功能模块的授权使用和数据不被非法访问,系统划分了不同的操作权限和数据读写等级。系统管理人员能够方便、灵活的将这些权限登记分配给某一个或某一类用户。当用户登陆时,系统在用户身份验
8、证经过后取得用户的权限,根据用户权限显示相应的功能菜单。当用户对数据进行读、写、删除后浏览操作时,系统判断用户对该数据的访问权限确定是否允许该操作的执行。4.2. 优化 在给定的系统硬件和系统软件条件下,提高数据库系统的运行效率的办法是: 1. 在数据库物理设计时,降低范式,增加冗余, 少用触发器, 多用存储过程。 2. 当计算非常复杂、而且记录条数非常巨大时(例如一千万条),复杂计算要先在数据库外面,以文件系统方式用java等语言计算处理完成之后,最后才入库追加到表中去。 3. 发现某个表的记录太多,例如超过一千万条,则要对该表进行水平分割。水平分割的做法是,以该表主键PK的某个值为界线,将该表的记录水平分割为两个表。若发现某个表的字段太多,例如超过八十个,则垂直分割该表,将原来的一个表分解为两个表。 4. 对数据库管理系统DBMS进行系统优化,即优化各种系统参数,如缓冲区个数。 5. 在使用面向数据的SQL语言进行程序设计时,尽量采取优化算法。 总之,要提高数据库的运行效率,必须从数据库系统级优化、数据库设计级优化、程序实现级优化,这三个层次上同时下功夫。