济宁网站建设电话,怎样建设一个网站,梁头网站建设,可制作网页的软件更好的阅读体验\huge{\color{red}{更好的阅读体验}}更好的阅读体验 文章目录1.1 数据库系统概述1.1.1 基本概念数据#xff08;data#xff09;数据库#xff08;DataBase, DB#xff09;数据库管理系统#xff08;DataBase Management System, DBMS#xff09;数据库系统…更好的阅读体验\huge{\color{red}{更好的阅读体验}}更好的阅读体验 文章目录1.1 数据库系统概述1.1.1 基本概念数据data数据库DataBase, DB数据库管理系统DataBase Management System, DBMS数据库系统DataBase System, DBS1.1.2 数据管理技术的产生和发展1.1.3 数据库系统的特点1.2 数据模型1.2.1 两种数据模型概念模型逻辑模型1.2.2 概念模型基本概念概念模型的一种表示方法1.2.3 数据模型的组成要素数据结构数据操作数据的完整性约束条件1.2.4 常用的数据模型1.2.5 层次模型层次模型的数据结构层次模型的数据操纵与完整性约束层次模型优缺点1.2.6 网状模型网状模型的数据结构网状模型的数据操纵与完整性约束网状模型优缺点1.2.7 关系模型重点关系模型的数据结构关系模型的数据操纵与完整性约束关系模型的优缺点1.3 数据库系统的结构1.3.1 数据库系统模式的概念1.3.2 数据库系统的三级模式结构模式schema外模式external schema内模式internal schema1.3.3 数据库的二级映像功能与数据独立性外模式/模式映像模式/内模式映像1.1 数据库系统概述 1.1.1 基本概念 数据data
数据是数据库中存储的基本对象。描述事物的符号记录称为数据。数据有多种表现形式它们都可以经过数字化之后存入计算机。
数据的表现形式还不能完全表达其内容需要经过解释数据和关于数据的解释是不可分的。
数据的解释是指对数据含义的说明数据的含义称为数据的语义数据与其语义是不可分的。 数据库DataBase, DB 数据库是长期储存在计算机内、有组织的、可共享的大量数据的集合。 数据库中的数据按一定的数据模型组织、描述和储存具有以下特点 较小的冗余度redundancy较高的数据独立性data independency易扩展性scalability可为各种用户共享 概括地讲数据库数据具有永久存储、有组织和可共享三个基本特点。 数据库管理系统DataBase Management System, DBMS
数据库管理系统是位于用户与操作系统之间的一层数据管理软件。数据库管理系统和操作系统一样是计算机的基础软件也是一个大型复杂的软件系统。它的主要功能包括以下几个方面
数据定义功能 提供数据定义语言Data Definition Language, DDL可对数据库中的数据对象的组成与结构进行定义。 数据组织、存储和管理 数据库管理系统要分类组织、存储和管理各种数据提高存储空间利用率和方便存取提供多种存取方法来提高存取效率。 数据操纵功能 提供数据操纵语言Data Manipulation Language, DML可操纵数据实现对数据库的增删改查等。 数据库的事务管理和运行管理 数据库在建立、运用和维护时由数据库管理系统统一管理和控制保证事务的正确运行保证数据的安全性、完整性、多用户对数据的并发使用及发生故障后的系统恢复。 数据库的建立和维护功能 包括数据库初始数据的输入、转换功能数据库的转储、恢复功能数据库的重组织功能和性能监视、分析功能等。 其他功能 包括数据库管理系统与网络中其他软件系统的通信功能一个数据库管理系统与另一个数据库管理系统或文件系统的数据转换功能异构数据库之间的互访和互操作功能等。 数据库系统DataBase System, DBS
由数据库、数据库管理系统及其应用开发工具、应用程序和数据库管理员DataBase AdministratorDBA组成的存储、管理、处理和维护数据的系统。数据库的建立、使用和维护等工作只靠一个数据库管理系统远远不够还要有专门的人员来完成这些人被称为数据库管理员。 1.1.2 数据管理技术的产生和发展 1.1.3 数据库系统的特点 数据结构化 数据库系统实现整体数据的结构化是数据库系统与文件系统的本质区别。所谓“整体”结构化不仅数据内部是结构化的而且数据整体是结构化的数据之间是具有联系的。 数据的共享性高、冗余度低且易扩充 数据可以被多个用户、多个应用共享使用数据共享可以大大减少数据冗余节约存储空间。避免数据之间的不相容性与不一致性。 数据独立性高 物理独立性用户的应用程序与数据库中数据的物理存储是相互独立的。逻辑独立性用户的应用程序与数据库的逻辑结构是相互独立的。 数据由数据库管理系统统一管理和控制 保证数据的安全性security数据的完整性integrity支持并发concurrency和数据库恢复recovery。 总结数据库是长期存储在计算机内有组织、大量、共享的数据集合。它可以供各种用户共享具有最小冗余度和较高的数据独立性。数据库管理系统在数据库建立、运用和维护时对数据库进行统一控制以保证数据的完整性和安全性并在多用户同时使用数据库时进行并发控制在发生故障后对数据库进行恢复。 1.2 数据模型 1.2.1 两种数据模型 数据模型data model也是一种模型它是对现实世界数据特征的抽象数据模型是数据库系统的核心和基础。
数据模型应满足三方面要求
能比较真实地模拟现实世界。容易为人所理解。便于在计算机上实现。 概念模型 第一类概念模型conceptual model也称信息模型它是按用户的观点来对数据和信息建模使用简单的符号来描述信息没有严格的规定只要能清晰反映现实世界的信息就行主要用于数据库设计。 逻辑模型 第二类中的逻辑模型主要包括层次模型hierarchical model、网状模型network model、关系模型relational model、面向对象数据模型object oriented data model和对象关系数据模型object relational data model、半结构化数据模型semistructured data model等。它是按计算机系统的观点对数据建模主要用于数据库管理系统的实现。
第二类中的物理模型是对数据最底层的抽象它描述数据在系统内部的表示方式和存取方法或在磁盘或磁带上的存储方式和存取方法是面向计算机系统的。物理模型的具体实现是数据库管理系统的任务。 1.2.2 概念模型 基本概念 实体Entity客观存在并可相互区别的事物称为实体。可以是具体的人、事、物或抽象的概念。属性Attribute实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画。码Key唯一标识实体的属性集称为码。实体型Entity Type用实体名及其属性名集合来抽象和刻画同类实体称为实体型。 例如学生学号姓名性别出生年月所在院系入学时间 实体集Entity Set同型实体的集合称为实体集. 例如2021级计算机学院的全体学生。 联系Relationship现实世界中事物内部以及事物之间的联系在信息世界中反映为实体型内部的联系和实体型之间的联系。实体之间的联系有一对一、一对多和多对多等多种类型。 概念模型的一种表示方法 实体——联系方法
概念模型是对信息世界建模所以概念模型应该能够方便、准确地表示出上述信息世界中的常用概念。其中最为常用的是实体——联系方法(Entity-Relationship approach)。该方法用 E-R 图E-R diagram来描述现实世界的概念模型E-R 方法也称为 E-R 模型。 1.2.3 数据模型的组成要素 一般来讲数据模型是严格定义的一组概念的集合。这些概念精确地描述了系统的静态特性、动态特性和完整性约束条件。因此数据模型具有以下三个要素
数据结构。数据操作。数据的完整性约束条件。 数据结构 数据结构描述数据库的组成对象以及对象之间的联系。
数据结构描述的内容有两类 一类是与对象的类型、内容、性质有关的如网状模型中的数据项、记录关系模型中的域、属性、关系等 一类是与数据之间联系有关的对象如网状模型中的系型(set type)。 数据结构是刻画一个数据模型性质最重要的方面是所描述的对象类型的集合是对系统静态特性的描述。 数据操作 数据操作是指对数据库中各种对象型的实例值允许执行的操作的集合包括操作及有关的操作规则。
数据库主要有查询和更新包括插入、删除、修改两大类操作。
数据模型必须定义这些操作的确切含义、操作符号、操作规则如优先级以及实现操作的语言是对系统动态特性的描述。 数据的完整性约束条件 数据的完整性约束条件是一组完整性规则。
完整性规则是给定的数据模型中数据及其联系所具有的制约和依存规则用以限定符合数据模型的数据库状态以及状态的变化以保证数据的正确、有效和相容其规则包含 实体完整性。 参照完整性。 用户定义完整性。 满足以上三者即满足了数据的完整性约束。 1.2.4 常用的数据模型 层次模型Hierarchical Model网状模型Network Model关系模型Relational Model面向对象数据模型Object Oriented Model对象关系模型Object relational data Model半结构化数据模型Semistructure data model
其中层次模型和网状模型统称为格式化模型。 1.2.5 层次模型 层次模型是数据库系统中最早出现的数据模型层次数据库系统采用层次模型作为数据的组织方式。 层次模型的数据结构 在数据库中定义满足下面两个条件的基本层次联系的集合为层次模型
有且只有一个结点没有双亲结点这个结点称为根结点根以外的其他结点有且只有一个双亲结点。
在层次模型中**每个结点表示一个记录类型记录类型之间的联系用结点之间的连线有向边表示这种联系是父子之间的一对多的联系。**这就使得层次数据库系统只能处理一对多的实体联系。
在层次模型中同一双亲的子女结点称为兄弟结点twin 或 sibling没有子女结点的结点称为叶结点 由上图可以看出层次模型像一棵倒立的树结点的双亲是唯一的。 层次模型的数据操纵与完整性约束 层次模型的数据操纵主要有查询、插入、删除和更新。操作时要满足层次模型的完整性约束条件
进行插入操作时如果没有相应的双亲结点值就不能插入它的子女结点值。进行删除操作时如果删除双亲结点值则相应的子女结点值也将被同时删除。进行更新操作时如果更新的结点有子节点则应更新所有相应记录以保证数据的一致性。 层次模型优缺点 优点 层次数据模型的数据结构简单清晰。查询效率高性能优于关系模型不低于网状模型。层次数据模型提供了良好的完整性支持。 缺点 现实世界中很多联系是非层次的如多对多联系。如果一个结点有多个双亲结点等用层次模型表示就不方便。对插入和删除操作的限制比较多。查询子女结点必须通过双亲结点。由于结构严密层次命令趋于程序化。 1.2.6 网状模型 在现实世界中事物之间的联系更多的是非层次关系的用层次模型表示非树形结构是很不直接的网状模型则可以克服这一弊病。 网状模型的数据结构 在数据库中把满足以下两个条件的基本层次联系集合称为网状模型 允许一个以上的结点无双亲。 一个结点可以有多于一个的双亲。 网状模型是一种比层次模型更具普遍性的结构。**它去掉了层次模型的两个限制允许多个结点没有双亲结点允许结点有多个双亲结点此外它还允许两个结点之间有多种联系称之为复合联系。**因此网状模型可以更直接地去描述现实世界。而层次模型实际上是网状模型的一个特例。 由上图可知层次模型中子女结点与双亲结点的联系是唯一的而在网状模型中这种联系可以不唯一。 网状模型的数据操纵与完整性约束 网状模型的数据操作与层次模型相同。
由于网状模型一般来说没有层次模型那样严格的完整性约束条件因此具体的网状数据库系统对数据操纵都加了一些限制提供了一定的完整性约束。 网状模型优缺点 优点 能够更为直接地描述现实世界如一个结点可以有多个双亲。具有良好的性能存取效率较高。 缺点 结构比较复杂而且随着应用环境的扩大数据库的结构就变得越来越复杂不利于最终用户掌握。DDL、DML语言复杂用户不容易使用。用户必须了解系统结构的细节加重了编写应用程序的负担。 1.2.7 关系模型重点 关系模型是最重要的一种数据模型。关系数据库系统采用关系模型作为数据的组织方式。 关系模型的数据结构 关系模型建立在严格的数学基础上在用户观点下关系模型中数据的逻辑结构是一张二维表它由行和列组成。关系必须是规范化的满足一定的规范条件最基本的规范条件关系的每一个分量必须是一个不可分的数据项。
借用下图介绍关系模型的基本概念 关系relation一个关系对应通常说的一张表。 例如图中的这张学生登记表。 元组tuple表中的一行即为一个元组。 属性attribute表中的一列即为一个属性给每一个属性起一个名称即属性名。 例如图所示的表有 6 列对应 6 个属性学号姓名年龄性别系名和年级。 码key也称为码键。表中的某个属性组它可以唯一确定一个元组。 例如图中的学号可以唯一确定一个学生也就成为本关系的码。 域domain域是一组具有相同数据类型的值的集合。属性的取值范围来自某个域。 例如如人的年龄一般在1~120岁之间大学生年龄属性的域是15~45岁)性别的域是男女)系名的域是一个学校所有系名的集合。 分量元组中的一个属性值。 关系模式对关系的描述一般表示为关系名属性1属性2…属性n。 例如上面的关系可描述为学生学号姓名年龄性别系名年级。 关系模型要求关系必须是规范化的即要求关系必须满足一定的规范条件这些规范条件中最基本的一条就是关系的每一个分量必须是一个不可分的数据项不允许表中还有表。 关系模型的数据操纵与完整性约束 数据操作包含查询、插入、删除、更新。操作时要满足关系模型的完整性约束条件
数据操作是集合操作操作对象和操作结果都是关系即若干元组的集合。存取路径对用户隐蔽用户只要指出“干什么”或者“找什么”不必详细说明“怎么干”或者“怎么找”。保证操作遵循实体完整性、参照完整性、用户定义的完整性原则。 关系模型的优缺点 优点 建立在严格的数学概念的基础上。概念单一数据结构简单、清晰用户易懂易用实体和各类联系都用关系来表示对数据的检索和更新的结果也是关系。关系模型的存取路径对用户透明具有更高的数据独立性更好的安全保密性简化了程序员的工作和数据库开发建立的工作。 缺点 存取路径对用户透明导致查询效率往往不如非关系数据模型。为提高性能必须对用户的查询请求进行优化增加了开发数据库管理系统的难度。 1.3 数据库系统的结构 从数据库管理系统角度看是三级模式结构。从数据库最终用户角度看单用户结构、主从式结构、分布式结构、客户/服务器、浏览器/应用服务器/数据库服务器。 1.3.1 数据库系统模式的概念 型Type对某一类数据结构和属性的说明。值Value型的一个具体赋值。模式Schema数据库中全体数据的逻辑结构和特征的描述仅仅涉及型的描述反映的是数据的结构及其联系模式是相对稳定的。实例Instance模式的一个具体值反映数据库某一时刻的状态同一个模式可以有很多实例实例随数据库中的数据的更新而变动。 1.3.2 数据库系统的三级模式结构 数据库系统的三级模式结构是指数据库系统是由外模式、模式和内模式三级构成 模式schema 模式也称逻辑模式其特点如下
据库中全体数据的逻辑结构和特征的描述所有用户的公共数据视图综合了所有用户的需求是数据库系统模式结构的中间层地位一个数据库只有一个模式。模式是数据库数据在逻辑级上的视图以某种数据模型为基础。内容数据的逻辑结构如数据项的名字、类型、取值范围等数据之间的联系数据有关的安全性、完整性要求。数据库管理系统提供模式数据定义语言模式DDL来严格地定义模式。 外模式external schema 外模式也称子模式subschema或用户模式
数据库用户包括应用程序员和最终用户使用的局部数据的逻辑结构和特征的描述数据库用户的数据视图是与某一应用有关的数据的逻辑表示 介于模式与应用之间地位。模式与外模式的关系一对多外模式通常是模式的子集一个数据库可以有多个外模式。反映了不同的用户的应用需求、看待数据的方式、对数据保密的要求对模式中同一数据在外模式中的结构、类型、长度、保密级别等都可以不同。外模式与应用的关系一对多同一外模式也可以为某一用户的多个应用系统所使用但一个应用程序只能使用一个外模式。 内模式internal schema 内模式也称存储模式storage schema
是数据物理结构和存储方式的描述是数据在数据库内部的组织方式。内容记录的存储方式顺序存储按照B树结构存储按hash方法存储索引的组织方式数据是否压缩存储数据是否加密数据存储记录结构的规定。一个数据库只有一个内模式。 1.3.3 数据库的二级映像功能与数据独立性 外模式/模式映像 内容定义外模式与模式之间的对应关系每一个外模式都对应一个外模式模式映象映象定义通常包含在各自外模式的描述中。 用途 保证数据的逻辑独立性 当模式改变时数据库管理员修改有关的外模式模式映象使外模式保持不变应用程序是依据数据的外模式编写的 由此保证应用程序不必修改保证了数据与程序的逻辑独立性简称数据的逻辑独立性。 模式/内模式映像 内容模式内模式映象定义了数据全局逻辑结构与存储结构之间的对应关系。数据库中模式内模式映象是唯一的该映象定义通常包含在模式描述中。用途 保证数据的物理独立性。当数据库的存储结构改变了例如选用了另一种存储结构数据库管理员修改模式内模式映象使模式保持不变应用程序不受影响。由此保证了数据与程序的物理独立性简称数据的物理独立性。