分层数据模型是最早的数据模型之一。该模型是基于文件的模型构建,就像树一样。在此树中,父节点可以与多个子节点关联,但是一个子节点只能有一个父节点。
对于目录和文件,可以说单个目录进一步包含多个文件或目录,然后这些目录包含更多文件,依此类推。
这可以表示为-
使用关系数据库的层次模型的示例如下-
<员工>
Emp_Number | Emp_Name | Emp_Designation | Emp_Salary |
1 | 布拉德 | 作家 | 60000 |
2 | 汤姆 | 软件工程师 | 15000 |
3 | 凯文 | 秘书 | 70000 |
<计算机>
序列号 | 类型 | Emp_Number |
A100001 | 个人电脑 | 1 |
930 | 个人电脑 | 2 |
C101703 | 个人电脑 | 3 |
在上面给出的示例中,Employee表是父表,而Computer表是子表。计算机表指向雇员表,因为它指定哪个雇员正在使用哪台计算机。
在分层模型中,一对一关系可以轻松显示,因为一个父节点具有多个子节点。但是使用这种模型显示多对多关系要复杂得多。
层次模型是僵化的,不是很灵活。如果需要将另一个节点或关系添加到模型中,则可能会破坏整个现有结构。