数据库管理系统常见的数据模型有层次模型,网状模型和什么

数据库管理系统常见的数据模型有层次模型,网状模型和什么,第1张

数据库管理系统常见的数据模型有层次模型、网状模型和关系模型 3种

数据模型是对现实世界数据的模拟,是一个研究工具,利用这个研究工具我们可以更好地把现实中的事物抽象为计算机可处理的数据。

层次模型:

层次模型以“树结构”表示数据之间的联系

层次模型是数据库系统最早使用的一种模型,它的数据结构是一棵“有向树”。根结点在最上端,层次最高,子结点在下,逐层排列。

层次模型的特征是:

在一个层次模型中的限制条件是:

(1)有且仅有一个节点,无父节点,它为树的根;(有且仅有一个结点没有双亲,该节点就是根结点。)

(2)其他节点有且仅有一个父节点。(根以外的其他结点有且仅有一个双亲结点

)这就使得层次数据库系统只能直接处理一对多的实体关系

(3)任何一个给定的记录值只有按照其路径查看时,才能显出它的全部意义,没有一个子女记录值能够脱离双亲记录值而独立存在。

比如:一个教师学生层次模型。该层次模型有4个记录类型,即实体。

分别是:

(1)记录型(实体)系是根结点,由编号、名称、专业、人数属性(字段)组成。它有两个子结点,分别是学院老师实体和课程实体。

(2)记录型(实体)教师是学院的子结点,它有6个属性(字段)组成。

(3)记录型(实体)课程由4个属性(字段)组成。

(4)记录型(实体)教师由6个属性(字段)组成。课程与教师是叶子结点,由学院到老师、老师到课程都是一对多的联系。

数据完整性约束

其主要四个功能:增删查改;要满足完整性约束条件;

增加(插入):满足必须有双亲节点,即如果加入教师,就必须分配到学院中;

删除:如果是字节点,不影响,直接删除字节点,如果是双亲节点,则整个字节点被删除;如果删除整个教研室则教研室的老师不存在这个体系;

查找:根据树状结构自上而下查找;

修改:更新相应的关系的信息。

其优缺点:

优点:

比较简单,容易使用;

结构清晰,现实中公司、家族等都存在类似结构;

良好的完整性支持;

查询效率高,模型层次是有向边,常记录存取路径。

缺点:

有很多不是单向关系,一对多,多对一,只能通过引进冗余数据或建非自然的数据组织如创建虚拟节点的方法来解决,易产生不一致性;

插入删除限制太多

查找字节点必须通过双亲;

树结点中任何记录的属性是不可再分的简单数据类型;

网状模型:

网状模型是以“图结构”来表示数据之间的联系。

1、条件特征

(1)允许有一个以上的节点无双亲。

(2)至少有一个节点可以有多于一个的双亲。

网状模型中每个结点表示一个记录型(实体),每个记录型可包含若干个字段(实体的属性),结点间的连线表示记录类型(实体)间的父子关系。

从定义可以看出,层次模型中子结点与双亲结点的联系是唯一的,而在网状模型中这种联系可以不唯一。因此,在网状模型中要为每个联系命名,并指出与该联系有关的双亲记录和子记录。

2、表示方法:

实体型:用记录类型描述

每个结点表述一个记录类型(实体);

属性:用字段描述,每个记录类型包含若干个字段;

联系:用结点之间的连线表示记录类型(实体)之间的一对多的父子关系;

网状模型与层次模型的区别:

网状模型:允许多个结点没有双亲结点;

允许结点有多个双亲;

允许两个结点有多种联系(复合联系);

可以更直接的去描述现实世界;

层次模型是网状模型的一个特例。

要为每个联系命名(L1、L2),并指出该联系相关的双亲记录和子女记录。

3、多对多在网状模型的表示

用网状模型表示多对多的关系

方法:将多对多直接分解成一对多的联系

4、 举例:学生选课模型

它由3个数据项组成,即学号、课程号、成绩,表示某个学生选修某一门课程及其成绩。

每个学生可以选修多门课程。显然对于学生记录中的一个值,选课记录中可以有多个值与之联系。而选课记录中的一个值,只能与学生记录中的一个值联系。学生与选课之间的联系是一对多的联系,联系名为学生-选课。同样,课程与选课之间的联系也是一对多的联系,联系名为课程-选课。

5、 *** 纵

网状模型的数据 *** 作主要包括查询、插入、删除和更新:

插入:插入尚未确定双亲结点值的子结点值;

删除:只允许删除双亲结点值。如可删除一个教研室,而该科研室所有教师的信息仍保留在数据库中。

修改:可直接表示非树状结构,而无须像层次模型那样增加冗余结点,因此修改 *** 作时只需要指定更新记录即可。

网状数据系统(DBTG)对数据加了一些限制,提供了一定的完整性约束:

码:唯一标识记录的数据项集合;

一个联系中双亲记录和子女记录是一对多的关系;

支持双亲记录和子女记录之间的某些约束性条件;

关键:实现记录联系;

常用方法:单向、双向、环向、向首链接;

6、优缺点

网状数据模型的优点如下:

(1) 能够更为直接地描述现实客观世界,可表示实体间的多种复杂联系。

(2) 具有良好的性能,存取效率较高。

网状数据模型的缺点如下:

(1) 结构比较复杂,其数据定义语言(DDL)、数据 *** 作语言(DML)复杂,用户不容易使用。而且应用环境越大,数据库的结构就变得越复杂,不利于最终用户掌握。

(2) 数据独立性差,由于实体间的联系本质上是通过存取路径表示的,因此应用程序在访问数据时要指定存取路径。

关系模型:

关系模型是用“二维表”(或称为关系)来表示数据之间的联系的。

1、基本术语

(1)关系(Relation):一个关系对应着一个二维表,二维表就是关系名。

(2)元组(Tuple):在二维表中的一行,称为一个元组。

(3)属性(Attribute):在二维表中的列,称为属性。属性的个数称为关系的元或度。列的值称为属性值;

(4)(值)域(Domain):属性值的取值范围为值域。

(5)分量:每一行对应的列的属性值,即元组中的一个属性值。[2]

(6)关系模式:在二维表中的行定义,即对关系的描述称为关系模式。一般表示为(属性1,属性2,,属性n),如老师的关系模型可以表示为教师(教师号,姓名,性别,年龄,职称,所在系)。

(7)键(码):如果在一个关系中存在唯一标识一个实体的一个属性或属性集称为实体的键,即使得在该关系的任何一个关系状态中的两个元组,在该属性上的值的组合都不同。

(8)候选键(候选码):若关系中的某一属性的值能唯一标识一个元组如果在关系的一个键中不能移去任何一个属性,否则它就不是这个关系的键,则称这个被指定的候选键为该关系的候选键或者候选码。

例如下列学生表中“学号”或“图书证号”都能唯一标识一个元组,则“学号”和“图书证号”都能唯一地标识一个元组,则“学号”和“图书证号”都可作为学生关系的候选键。

而在选课表中,只有属性组“学号”和“课程号”才能唯一地标识一个元组,则候选键为(学号,课程号)。

2、关系模型的数据 *** 作与完整性约束

关系数据模型的 *** 作主要包括查询、插入、删除和修改数据;这些 *** 作必须满足关系的完整性约束条件。

关系模型中数据 *** 作的特点是集合 *** 作方式,即 *** 作对象和 *** 作结果都是集合,这种 *** 作方式也称为一次一集合的方式。

相应地,非关系数据模型的 *** 作方式是一次一记录的方式。

关系的完整性约束条件包括三大类:

实体完整性、参照完整性和用户定义的完整性。

实体完整性定义数据库中每一个基本关系的主码应满足的条件,能够保证元组的唯一性。参照完整性定义表之间的引用关系,即参照与被参照关系。用户定义完整性是用户针对具体的应用环境制定的数据规则,反映某一具体应用所涉及的数据必须满足的语义要求。

3、关系模型的优缺点

优点

(1) 关系模型与非关系模型不同,它是建立在严格的数学理论基础上的。

(2) 关系模型的概念单一,实体与实体间的联系都用关系表示,对数据的检索结果也是关系(即表),所以其数据结构简单、清晰,用户易懂易用。

(3) 关系模型的物理存储和存取路径对用户透明,从而具有更高的数据独立性、更好的安全保密性,简化了程序员的数据库开发工作。

缺点

(1) 由于存取路径对用户透明,查询效率往往不如非关系数据模型高。因此,为了提高性能,必须对用户的查询请求进行优化,这就增加了开发数据库管理系统的难度和负担。

(2) 关系数据模型不能以自然的方式表示实体集间的联系,存在语义信息不足、数据类型过少等弱点。

数据库通常分为:

层次式数据库、网络式数据库和关系式数据库三种。

而不同的数据库是按不同的数据结构来联系和组织的。

数据库有类型之分,是根据数据模型划分的。目前成熟地应用在数据库系统中的数据模型有:层次模型、网壮模型和关系模型。

一、层次模型:

层次模型是用树结构表示记录类型及其联系的。

树结构的基本特点是:

1、有且仅有一个结点无父结点;

2、其它结点有且有一个父结点。

在层次模型中,树的结点是记录型。上一层记录型和下一层记录型的联系是1:n的。

层次模型就象下面我们给出的一棵倒立的树。

注意:在层次式数据库中查找记录,必须指定存取路径。这种关系模型不支持m:n联系。

二、网状模型:

网状模型中结点间的联系不受层次限制,可以任意发生联系,所以她的结构是结点的连通图。

网状模型结构的特点是:

1、有一个以上结点无父结点;

2、至少有一个结点有多于一个父结点。

注意:虽然网状模型能反映各种复杂的关系,但网状模型在具体实现上,只支持1:n联系,对

于m:n联系可将其转化为1:n联系。

三、关系模型:

关系模型的本质就是用若干个二维表来表示实体及其联系。

关系是通过关系名和属性名定义的。一个关系可形式化表示为:

R(A1,A2,A3,…,Ai,…)

其中:R为关系名,Ai为关系的属性名。

目前常用的数据库管理系统有:

ACCESS、SQL Server、 Oracle、MySQL、FoxPro和Sybase等。

ACCESS 是美国Microsoft公司于1994年推出的微机数据库管理系统它具有界面友好、易学易用、开发简单、接口灵活等特点,是典型的新一代桌面数据库管理系统。

Oracle公司是全球最大的信息管理软件及服务供应商,成立于1977年,总部位于美国加州 Redwood shore。Oracle提供的完整的电子商务产品和服务包括: 用于建立和交付基于Web的Internet平台; 综合、全面的具有Internet能力的商业应用; 强大的专业服务,帮助用户实施电子商务战略,以及设计、定制和实施各种电子商务解决方案

SQL是英文Structured Query Language的缩写,意思为结构化查询语言。SQL语言的主要功能就是同各种数据库建立联系,进行沟通。按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言。SQL语句可以用来执行各种各样的 *** 作,例如更新数据库中的数据,从数据库中提取数据等。目前,绝大多数流行的是关系型数据库管理系统。

内容来源网络,仅供参考!

问题一:数据库系统包括什么? 通常由软件、数据库和数据管理员组成。

问题二:请问数据库有哪些种类呢 根据存储模型划分,数据库类型主要可分为:网状数据库(Network Database)、关系数据库(Relational Database)、树状数据库(Hierarchical Database)、面向对象数据库(Object-oriented Database)等。商业应用中主要是关系数据库,比如Oracle、DB2、Sybase、MS SQL Server、Informax、MySQL等。全部罗列出来是没有意义的,数据库太多了,你不说你的工作是涉及哪方面,恐怕很难提供更适合你的数据库。

初级应用一般是ACCESS 配合的脚本程序一般是 ASP ASPNET JSPMICROSOFT SQL 比较复杂点 不过功能强大很多 配合的脚本和ACCESS的一样MYSQL和PHP的组合是比较完美的如果你需要处理1000W条数据以上级别的数据,那以上的都不合适,一般用的比较多的是ORACLE 这个入门难度非常大如果想学的话就先学MICROSOFT SQL吧,这个网上教学比较多,ASPNET 20,应用的是非常广泛的。

问题三:sql数据类型有哪些 一、 整数数据类型

整数数据类型是最常用的数据类型之一。

1、INT (INTEGER)

INT (或INTEGER)数据类型存储从-2的31次方 (-2 ,147 ,483 ,648) 到2的31次方-1 (2 ,147 ,483,647) 之间的所有正负整数。每个INT 类型的数据按4 个字节存储,其中1 位表示整数值的正负号,其它31 位表示整数值的长度和大小。

2、SMALLINT

SMALLINT 数据类型存储从-2的15次方( -32, 768) 到2的15次方-1( 32 ,767 )之间的所有正负整数。每个SMALLINT 类型的数据占用2 个字节的存储空间,其中1 位表示整数值的正负号,其它15 位表示整数值的长度和大小。

3、TINYINT

TINYINT数据类型存储从0 到255 之间的所有正整数。每个TINYINT类型的数据占用1 个字节的存储空间。

4、BIGINT

BIGINT 数据类型存储从-2^63 (-9 ,223, 372, 036, 854, 775, 807) 到2^63-1( 9, 223, 372, 036 ,854 ,775, 807) 之间的所有正负整数。每个BIGINT 类型的数据占用8个字节的存储空间。

二、 浮点数据类型

浮点数据类型用于存储十进制小数。浮点数值的数据在SQL Server 中采用上舍入(Round up 或称为只入不舍)方式进行存储。所谓上舍入是指,当(且仅当)要舍入的数是一个非零数时,对其保留数字部分的最低有效位上的数值加1 ,并进行必要的进位。若一个数是上舍入数,其绝对值不会减少。如:对314159265358979 分别进行2 位和12位舍入,结果为315 和3141592653590。

1、REAL 数据类型

REAL数据类型可精确到第7 位小数,其范围为从-340E -38 到340E +38。 每个REAL类型的数据占用4 个字节的存储空间。

2、FLOAT

FLOAT数据类型可精确到第15 位小数,其范围为从-179E -308 到179E +308。 每个FLOAT 类型的数据占用8 个字节的存储空间。 FLOAT数据类型可写为FLOAT[ n ]的形式。n 指定FLOAT 数据的精度。n 为1到15 之间的整数值。当n 取1 到7 时,实际上是定义了一个REAL 类型的数据,系统用4 个字节存储它;当n 取8 到15 时,系统认为其是FLOAT 类型,用8 个字节存储它。

3、DECIMAL

DECIMAL数据类型可以提供小数所需要的实际存储空间,但也有一定的限制,您可以用2 到17 个字节来存储从-10的38次方-1 到10的38次方-1 之间的数值。可将其写为DECIMAL[ p [s] ]的形式,p 和s 确定了精确的比例和数位。其中p 表示可供存储的值的总位数(不包括小数点),缺省值为18; s 表示小数点后的位数,缺省值为0。 例如:decimal (15 5),表示共有15 位数,其中整数10 位,小数5。 位表4-3 列出了各精确度所需的字节数之间的关系。

4、NUMERIC

NUMERIC数据类型与DECIMAL数据类型完全相同。

注意:SQL Server 为了和前端的开发工具配合,其所支持的数据精度默认最大为28位。

三、 二进制数据类型

1、BINARY

BINARY 数据类型用于存储二进制数据。其定义形式为BINARY( n), n 表示数据的长度,取值为1 到>>

问题四:常用数据库有哪些? 1 IBM 的DB2

作为关系数据库领域的开拓者和领航人,IBM在1997年完成了System R系统的原型,1980年开始提供集成的数据库服务器―― System/38,随后是SQL/DSforVSE和VM,其初始版本与SystemR研究原型密切相关。DB2 forMVSV1 在1983年推出。该版本的目标是提供这一新方案所承诺的简单性,数据不相关性和用户生产率。1988年DB2 for MVS 提供了强大的在线事务处理(OLTP)支持,1989 年和1993 年分别以远程工作单元和分布式工作单元实现了分布式数据库支持。最近推出的DB2 Universal Database 61则是通用数据库的典范,是第一个具备网上功能的多媒体关系数据库管理系统,支持包括Linux在内的一系列平台。

2 Oracle

Oracle 前身叫SDL,由Larry Ellison 和另两个编程人员在1977创办,他们开发了自己的拳头产品,在市场上大量销售,1979 年,Oracle公司引入了第一个商用SQL 关系数据库管理系统。Oracle公司是最早开发关系数据库的厂商之一,其产品支持最广泛的 *** 作系统平台。目前Oracle关系数据库产品的市场占有率名列前茅。

3 Informix

Informix在1980年成立,目的是为Unix等开放 *** 作系统提供专业的关系型数据库产品。公司的名称Informix便是取自Information 和Unix的结合。Informix第一个真正支持SQL语言的关系数据库产品是Informix SE(StandardEngine)。InformixSE是在当时的微机Unix环境下主要的数据库产品。它也是第一个被移植到Linux上的商业数据库产品。

4 Sybase

Sybase公司成立于1984年,公司名称“Sybase”取自“system”和 “database” 相结合的含义。Sybase公司的创始人之一Bob Epstein 是Ingres 大学版(与System/R同时期的关系数据库模型产品)的主要设计人员。公司的第一个关系数据库产品是1987年5月推出的Sybase SQLServer10。Sybase首先提出Client/Server 数据库体系结构的思想,并率先在Sybase SQLServer 中实现。

5 SQL Server

1987 年,微软和 IBM合作开发完成OS/2,IBM 在其销售的OS/2 ExtendedEdition 系统中绑定了OS/2Database Manager,而微软产品线中尚缺少数据库产品。为此,微软将目光投向Sybase,同Sybase 签订了合作协议,使用Sybase的技术开发基于OS/2平台的关系型数据库。1989年,微软发布了SQL Server 10 版。

6 PostgreSQL

PostgreSQL 是一种特性非常齐全的自由软件的对象――关系性数据库管理系统(ORDBMS),它的很多特性是当今许多商业数据库的前身。PostgreSQL最早开始于BSD的Ingres项目。PostgreSQL 的特性覆盖了SQL-2/SQL-92和SQL-3。首先,它包括了可以说是目前世界上最丰富的数据类型的支持;其次,目前PostgreSQL 是唯一支持事务、子查询、多版本并行控制系统、数据完整性检查等特性的唯一的一种自由软件的数据库管理系统

>>

问题五:数据库的对象有哪些 Funciton:函数

Procedure:存储过程

Package:代码包,一个包里面,定义多个存储过程、函数、类型、常量等

Type:自定义数据类型

Trigger:触发器

Job:数据库作业 (定期执行的)

Table:表

Index:索引

Constraint:约束,限制各数据项应满足哪些限阀条件

View:视图

Materialized View:物化视图

Sequence:序列

User:叫 用户

Synonym:同义词

Database link:数据库链接(ORACLE有,别的数据库不熟,想必也应该有,可能不叫这个名字)

TableSpace:表空间(ORACLE叫这个名字,别的数据库不熟)

CURSOR:游标

常用的大致这些,可能会有遗漏,但也应该不会差太多。

问题六:常用数据库有哪些?他们有什么区别 开源的Mysql顶;PostgreSQL即开放源码的

商业的Oracle/SQL Server/DB2即收费的

问题七:查看数据库中有哪些表空间 可以用S罚L语句 SELECT FROM v$tablespace

也可以用oracle enterprise manger console 直接在可视化窗口上查看

问题八:常见的数据库应用系统有哪些? 现在极大多的企业级软件都是基于数据库的。

比如:

ERP: 企业资源管理计划

CRM: 客户关系管理

OA: 办公自动化。

12306铁道部的网上订票系统。

。。。

问题九:如何看mysql都有哪些数据库 第一步:首先是查看mysql数据库的端口号,使用命令show

第二步:查看有哪些数据库,

第三步:查看mysql数据库所有用户,

第四步:查看某个数据库中所有的表

问题十:数据库系统包括什么? 通常由软件、数据库和数据管理员组成。

以上就是关于数据库管理系统常见的数据模型有层次模型,网状模型和什么全部的内容,包括:数据库管理系统常见的数据模型有层次模型,网状模型和什么、请问数据库有哪些种类呢、数据库包括哪些等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9430315.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存