java 数据字典-java 字典树 中文
这是我参与8月更文挑战的第7天,活动详情查看:8月更文挑战
比较偏概念性的内容
在进行数据库设计时,常常在需求分析的基础上,设计完善的数据字典和需求分析报告。需求分析报告是对业务整体需求的完整描述、分析和总结。
而数据字典则是进行后续数据库概念、逻辑结构、物理存储以及开发等的重要依据。
数据库的数据字典
数据字典是关于数据库中数据的描述,称为元数据。
它不是数据本身,而是数据的数据。是对基础数据的描述。
数据字典在需求分析阶段建立,在数据库设计过程中不断修改、充实、完善。
数据字典是进行详细的数据收集和分析所获得的主要结果。
注意要和DBMS(数据库管理系统)的数据字典的区别。
数据字典的内容数据项
数据项是数据的最小组成单位,是不可再分的数据单位,若干个数据项可以组成一个数据结构。
通过对数据项和数据结构的定义来描述数据流、数据存储的逻辑内容。
数据项描述
数据项描述 = {数据项名,数据项含义说明,别名, 数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系, 数据项之间的联系 }
需要根据数据依赖的概念分析和抽象数据项之间的联系——函数依赖。
其中的“取值范围”、“与其他数据项的逻辑关系”定义了数据的完整性约束条件,是模式设计、完整性检查条件、触发器、存储过程的设计依据。
比如,以学籍管理系统中学号数据项为例,它的数据字典为:
数据项: 学号
含义说明:唯一标识每个学生
别名: 学生编号
类型: 字符型
长度: 9
取值范围:0000 00 000至9999 99 999
取值含义:前4位标别该学生入学年份,第5第6位所在专业系编号,后3位按顺序编号,例如202015008
与其他数据项的逻辑关系:学号的值确定了其他数据项的值
复制代码
数据结构
数据结构反映了数据之间的组合关系。
一个数据结构可以由若干个数据项组成,也可以由若干个数据结构组成,或由若干个数据项和数据结构混合组成。
对数据结构的描述数据结构描述= {数据结构名java 数据字典,含义说明,组成: {数据项或数据结构} }
比如,以学籍管理系统中“学生”为例java 数据字典,“学生”是该系统中的一个核心数据结构:
数据结构:学生
含义说明:学籍管理子系统的主体数据结构,定义了一个学生的有关信息
组成: 学号,姓名,性别,年龄,所在系,年级
复制代码
数据流
数据流是数据结构在系统内部传输的路径。
对数据流的描述数据流描述={ 数据流名,说明,数据流来源,数据流去向, 组成: {数据结构}, 平均流量,高峰期流量 }
以数据流“体检结果”位列,可如下描述:
数据流: 体检结果
说明: 学生参加体格检查的最终报告
数据流来源:体检(处理过程)
数据流去向:批准(处理过程)
组成: { 学号, {血常规},{尿常规},{血液生化},{心电图},
{B超}, … … {其他体检} }
平均流量: 每天200
高峰期流量:每天400
复制代码
数据存储
数据存储是数据结构停留或保存的地方,也是数据流的来源和去向之一。
对数据存储的描述
数据存储描述={数据存储名,说明,编号,输入的数据流 ,输出的数据流, 组成: {数据结构}, 数据量, 存取频度, 存取方式}
以数据存储“学生登记表”为例,可如下描述:
数据存储: 学生登记表
说明: 记录学生的基本情况
流入数据流:每学期5000
流出数据流:每学期5000
组成: {学号,姓名,性别,年龄,所在系,年级,{学习成绩},{体检结果},
{奖惩记录} … … }
数据量: 每年10000张
存取方式: 随机存取+按照专业系/班级打印
复制代码
处理过程
具体处理逻辑一般用判定表或判定树来描述。数据字典中只需要描述处理过程的说明性信息
对处理过程的描述
处理过程描述={ 处理过程名, 说明, 输入:{数据流}, 输出:{数据流}, 处理:{简要说明} }
以处理过程“分配宿舍”为例,可如下描述:
处理过程:分配宿舍
说明:为所有新生分配学生宿舍
输入:学生,宿舍
输出:宿舍安排
处理:在新生报到后,为所有新生分配学生宿舍。
要求同一间宿舍只能安排同一年级同一性别的学生。
一个学生只能安排在一个宿舍中。
每个学生的居住面积不小于6平方米。
安排新生宿舍其处理时间应不超过15分钟。
复制代码
参考