层次模型是数据库系统中最早使用的模型,它的数据结构类似一颗倒置的树,每个节点表示一个记录类型,记录之间的联系是一对多的联系,基本特征是:
* 一定有一个,并且只有一个位于树根的节点,称为根节点;
* 一个节点下面可以没有节点,即向下没有分支,那么该节点称为叶节点;
* 一个节点可以有一个或多个节点,前者称为父节点,后者称为子节点;
* 同一父节点的子节点称为兄弟节点。
* 除根节点外,其他任何节点有且只有一个父节点;
图11.7是一个层次模型的例子。
层次模型中,每个记录类型可以包含多个字段,不同记录类型之间、同一记录类型的不同字段之间不能同名。如果要存取某一类型的记录,就要从根节点开始,按照树的层次逐层向下查找,查找路径就是存取路径。如图11.8所示。
层次模型结构简单,容易实现,对于某些特定的应用系统效率很高,但如果需要动态访问数据(如增加或修改记录类型)时,效率并不高。另外,对于一些非层次性结构(如多对多联系),层次模型表达起来比较繁琐和不直观。
2.网状模型
网状模型可以看作是层次模型的一种扩展。它采用网状结构表示实体及其之间的联系。网状结构的每一个节点代表一个记录类型,记录类型可包含若干字段,联系用链接指针表示,去掉了层次模型的限制。网状模型的特征是:
1. 允许一个以上的节点没有父节点;
2. 一个节点可以有多于一个的父节点;
例如,图11.9(a)和图11.9(b)都是网状模型的例子。图11.9(a)中节点3有两个父节点,即节点1和节点2;图11.9(b)中节点4有三个父节点,即节点1,节点2和节点3。
由于网状模型比较复杂,一般实际的网状数据库管理系统对网状都有一些具体的限制。在使用网状数据库时有时候需要一些转换。例如,如图11.10所示。
网状模型与层次模型相比,提供了更大的灵活性,能更直接地描述现实世界,性能和效率也比较好。网状模型的缺点是结构复杂,用户不易掌握,记录类型联系变动后涉及链接指针的调整,扩充和维护都比较复杂。
3.关系模型
关系模型是目前应用最多、也最为重要的一种数据模型。关系模型建立在严格的数学概念基础上,采用二维表格结构来表示实体和实体之间的联系。二维表由行和列组成。下面以教师信息表和课程表为例,说明关系模型中的一些常用术语:
表11.1 教师信息表(表名为:tea_info)
TNO(教师编号)
NAME(姓名)
GENDER(性别)
TITLE(职称)
DEPT(系别)
805
李奇
女
讲师
基础部
856
薛智永
男
教授
信息学院
表11.2 课程表(表名为:cur_info)
CNO(课程编号)
DESCP(课程名称)
PERIOD(学时)
TNO(主讲老师编号)
005067
微机基础
40
805
005132
数据结构
64
856
1. 关系(或表):一个关系就是一个表,如上面的教师信息表和课程表。
2. 元组:表中的一行为一个元组(不包括表头)。
3. 属性:表中的一列为一个属性。
4. 主码(或关键字):可以唯一确定一个元组和其他元组不同的属性组。
5. 域:属性的取值范围。
6. 分量:元组中的一个属性值。
7. 关系模式:对关系的描述,一般表示为:关系名(属性1,属性2,... ...,属性n)。
关系模型中没有层次模型中的链接指针,记录之间的联系是通过不同关系中的同名属性来实现的。 关系模型的基本特征是:
1. 建立在关系数据理论之上,有可靠的数据基础;
2. 可以描述一对一,一对多和多对多的联系。
3. 表示的一致性。实体本身和实体间联系都使用关系描述。
4. 关系的每个分量的不可分性,也就是不允许表中表。
关系模型概念清晰,结构简单,实体、实体联系和查询结果都采用关系表示,用户比较容易理解。另外,关系模型的存取路径对用户是透明的,程序员不用关心具体的存取过程,减轻了程序员的工作负担,具有较好的数据独立性和安全保密性。
关系模型也有一些缺点,在某些实际应用中,关系模型的查询效率有时不如层次和网状模型。为了提高查询的效率,有时需要对查询进行一些特别的优化
层次模型网状模型
关系模型
对象关系模型
对象模型
还有这些数据库模型:
数据联合模型
面向概念模型
实体-属性-值模型
多位数据库模型
半结构化模型
数据模型按不同的应用层次分成概念数据模型、逻辑数据模型、物理数据模型。
1、概念数据模型
特点是面向用户、面向现实世界的数据模型,描述一个单位的概念化结构;具有较强的语义表达能力,能够方便、直接地表达应用中的各种语义知识;简单、清晰、易于用户理解;概念模型是充满主观色彩的工件。
2、逻辑数据模型
特点是直接反映出业务部门的需求,对系统的物理实施有着重要指导作用;可以通过实体和关系勾勒出企业的数据蓝图;逻辑模型提供用户定义完整性约束条件的机制,以反映具体应用所涉及的数据必须遵守的特定的语义约束条件。
3、物理数据模型
特点是具有以实物或画图形式直观的表达认识对象的特征;每一种逻辑数据模型在实现时都有其对应的物理数据模型;描述数据在储存介质上的组织结构,不但与具体的DBMS有关,而且还与 *** 作系统和硬件有关。
扩展资料:
数据模型结构主要分为数据结构、数据 *** 作、数据约束。
1、数据结构主要描述数据的类型、内容、性质以及数据间的联系等。数据类型,如DBTG网状模型中的记录型、数据项、关系模型中的关系等。数据结构是数据模型的基础,不同的数据结构具有不同的 *** 作和约束。
2、数据 *** 作主要描述在相应的数据结构上的 *** 作类型和 *** 作方式。是 *** 作算符的集合,包括若干 *** 作和推理规则,用以对目标类型的有效实例所组成的数据库进行 *** 作。
3、数据约束主要描述数据结构内数据间的语法、词义联系、他们之间的制约和依存关系,以及数据动态变化的规则,以保证数据的正确、有效和相容。约束条件可以按不同的原则划分为数据值的约束和数据间联系的约束;静态约束和动态约束;实体约束和实体间的参照约束等。
参考资料来源:百度百科-数据模型
参考资料来源:百度百科-概念模型
参考资料来源:百度百科-逻辑模型
参考资料来源:百度百科-物理模型
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)