美文网首页
MYSQL-数据库基础

MYSQL-数据库基础

作者: 熊大呀 | 来源:发表于2019-08-26 11:32 被阅读0次

    1、不同角色的人对数据库知识学习的侧重点:

    研发人员(测试及开发人员):主要学习如何操作数据库的逻辑对象,如表、索引和视图等,以得到应用程序中需要的数据。

    数据库管理员(DBA):要学习和掌握数据库的全部内容,包括数据库对象管理、性能优化、备份与恢复、安全管理等

    2、软件测试在什么时候会用到数据库的知识?

    *搭建测试环境

    *通用数据库操作功能的测试(增、删、改、查等)

    *快速创建测试数据,提高测试工作效率

    3、数据库

    数据库是指长期储存在计算机内的、有组织的、可共享的大量数据集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。

    数据库管理系统:

     (1) 一个对数据库进行统一管理、统一控制的系统软件,用户对数据库的任何操作都是通过它来完成的,因此也被称为数据平台,是用户和数据库之间的桥梁

    (2)主流数据库管理系统:MySQL、SQLServer、Oracle、DB2、Access、Sybase

    (3)数据库系统

    (4) 计算机系统中引入数据库后的一个人机系统,一般由数据库、数据库管理系统、计算机硬件、操作系统、开发工具、应用系统、数据库管理员和用户构成

    4、数据管理技术的发展分为三个阶段:人工管理、文件系统、数据库系统

    5、数据库系统的出现使信息系统的开发从以加工数据的应用程序为中心转向以共享的数据库为中心的新阶段,这和数据在各行各业的基础地位是相符合的

    优势:数据库系统的使用便于数据的集中管理,又有利于应用程序的研发和维护,提高了数据的利用率�更重要的还提高了数据的安全性、正确性和可靠性

    6、由于计算机不能直接处理显示世界中的客观对象,所以必须先对其进行抽象,将其转换成计算机能够处理的数据,为此数据库使用数据模型来对现实世界进行抽象和模拟,并且按照数据模型对数据进行组织

    数据库模型分成两个不同的层次

    (1) 概念模型  也称信息模型,它是按用户的观点来对数据和信息建模。

    (2) 数据模型  主要包括网状模型、层次模型、关系模型等,它是按计算机系统的观点对数据建模。

    客观对象的抽象过程---两步抽象:现实世界中的客观对象抽象为概念模型;把概念模型转换为某一DBMS支持的数据模型。

    概念模型的用途:概念模型用于信息世界的建模;是现实世界到机器世界的一个中间层次;是数据库设计的有力工具;数据库设计人员和用户之间进行交流的语言

    对概念模型的基本要求:较强的语义表达能力,能够方便、直接地表达应用中的各种语义知识;简单、清晰、易于用户理解7、

    7、信息世界中的基本概念

    (1) 实体(Entity) :客观存在并可相互区别的事物称为实体;可以是具体的人、事、物或抽象的概念。

    (2) 属性(Attribute):实体所具有的某一特性称为属性;一个实体可以由若干个属性来刻画。 

    (3) 键(Key):唯一标识实体的属性集称为键;

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

    (5) 实体型(Entity Type):用实体名及其属性名集合来抽象和刻画同类实体称为实体型。

    (6) 实体集(Entity Set):同型实体的集合称为实体集。

    (7) 联系(Relationship) :现实世界中事物内部以及事物之间的联系在信息世界中反映为实体内部的联系和实体之间的联系。实体内部的联系:组成实体的各属性之间的联系。实体之间的联系:不同实体集之间的联系

    三类实体型间联系:一对一联系(1:1)、  一对多联系(1:n)、多对多联系(m:n)

    8、数据模型

    (1)概念模型虽然能很好地模拟现实世界,但却独立于具体的数据库管理系统。因此,数据库的计算机实现还需要将概念模型进一步转换为某一数据库管理系统支持的数据模型,然后据此来创建数据库;为了精确地描述数据的逻辑结构,数据模型提供了一组严格定义的概念,这些概念描述了数据的静态特性、动态特性和完整性约束条件

    数据结构:对数据的组织方式及其类型的描述,即静态特性的描述

    数据操作 :对数据库中数据执行的操作和有关的操作规则,主要包括查询和更新(包括插入、删除和修改)两大类,即动态特性的描述

    完整性约束条件:一组完整性规则的集合,是给定的数据模型中数据及其联系所具有的制约和储存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容

    (2)常见的数据模型:

    *非关系模型-种类:层次模型(Hierarchical Model)、网状模型(Network Model )

                        -数据结构:以基本层次联系为基本单位;基本层次联系:两个记录以及它们之间的一对多(包括一对一)的联系

    *关系模型(Relational Model) :数据结构:表

    *面向对象模型(Object Oriented Model):数据结构-对象

    (3)层次模型的特点:

    *层次模型只能直接表示一对多(包括一对一)联系,而无法直接表示实体间的多对多联系。

    *为了能表示多对多联系,进而真实地模拟现实世界,需要将其分解成两个一对多联系。

    *对于任何一个给定的记录值(表示一个具体的实体),只有按其路径查看时,才能获得它的全部含义

    网状模型的特点:

    *网状模型表示多对多联系的方法要比层次模型更简单、更直观。

    *和层次模型一样,网状模型的数据访问也采用“导航式”,即需要详细指明数据访问的存取路径,按路径对数据进行访问。

    *数据独立性较差。

    (4)关系模型

    关系(Relation):一个关系对应通常说的一张表。

    元组(Tuple):表中的一行即为一个元组。

    属性(Attribute):表中的一列即为一个属性,给每一个属性起一个名称即属性名。

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

    分量:元组中的一个属性值。

    键(Key):

      由一个或几个属性组成,能够唯一标识元组

      超键(super key):在关系中能唯一标识元组的属性集称为关系模式的超键

      候选键(candidate key) :不含有多余属性的超键称为候选键

      主键(Key):用户选作元组标识的一个候选键称为主键

    *优点:1、建立在严格的数学概念的基础上;2、概念单一。数据结构简单、清晰,用户易懂易用:实体和各类联系都用关系来表示、对数据的检索结果也是关系;3、关系模型的存取路径对用户隐蔽:具有更高的数据独立性,更好的安全保密性;简化了程序员的工作和数据库开发建立的工作

    *缺点:存取路径对用户透明导致查询效率往往不如非关系数据模型;为提高性能,必须对用户的查询请求进行优化;增加了开发数据库管理系统的难度

    (5)范式:关系模式要满足的条件称为规范化形式,简称范式(Normal Form),只有满足一定条件的关系模式,才能避免操作异常

    第一范式(1NF)

    第二范式(2NF)

    第三范式(3NF)

    (6)外键

    设F是基本关系R的一个或一组属性, 但不是关系R的键。如果F与基本关系S的主键Ks相对应,则称F是基本关系R的外键(Foreign Key);基本关系R称为参照关系(Referencing Relation);基本关系S称为被参照关系(Referenced Relation)或目标关系(Target Relation)

    (7)关系数据库产品-Oracle:Oracle、MySQL、IBM:DB2、INFORMIX、微软:SQLServer、Sybase公司:Sybase、其他:Sqlite

    9、内模式(也称存储模式) 

    1、是数据物理结构和存储方式的描述,对应数据库的存储文件;

    是数据在数据库内部的表示方式 :记录的存储方式(顺序存储,按照B树结构存储,按hash方法存储)、 索引的组织方式、 数据是否压缩存储、 数据是否加密、 数据存储记录结构的规定 

    一个数据库只有一个内模式

    模式(也称逻辑模式):数据库中全体数据的逻辑结构和特征的描述;所有用户的公共数据视图,综合了所有用户的需求

    一个数据库只有一个模式

    模式的地位:是数据库系统模式结构的中间层(与数据的物理存储细节和硬件环境无关、与具体的应用程序、开发工具及高级程序设计语言无关)

    模式的定义:数据的逻辑结构(数据项的名字、类型、取值范围等);数据之间的联系;数据有关的安全性、完整性要求

    2、外模式(也称子模式或用户模式):数据库用户(包括应用程序员和最终用户)使用的局部数据的逻辑结构和特征的描述;数据库用户的数据视图,是与某一应用有关的数据的逻辑表示

    外模式的用途:保证数据库安全性的一个有力措施。每个用户只能看见和访问所对应的外模式中的数据;保证数据独立性的一个有力措施。

    3、为了实现这三级模式之间的联系和转换,保证数据的独立性,数据库管理系统在这三级模式之间提供了两级映像功能,正是这两级映像功能保证了数据库中的数据具有较高的逻辑独立性和物理独立性

    外模式/模式映像

    一个数据库只有一个模式,却可以有多个外模式,分别面向具有不同数据需求的用户或应用程序,对于每一个外模式,数据库系统都会相应地存在一个外模式/模式映像,用来定义该外模式和模式之间的对应关系,包含在该外模式的定义之中;保证数据的逻辑独立性

    模式/内模式映像

    一个数据库只有一个模式,也只有一个内模式,因此,模式和内模式之间的对应关系是惟一的,这就是模式/内模式映像,该映像通常包含在模式的定义之中;保证数据的物理独立性

    4、应用程序从数据库中读取数据的步骤

    *应用程序向数据库管理系统发出读数据的命令;

    *数据库管理系统对该命令进行语法和语义检查,并调用该应用程序对应的外模式,检查该应用程序对将要读取的数据拥有什么样的存取权限,决定是否执行该命令,如果拒绝执行,则返回错误信息;

    *在决定执行该命令后,数据库管理系统调用模式,根据外模式/模式映像,确定应该读取模式中的哪些数据记录;

    *数据库管理系统调用内模式,根据模式/内模式映像,确定应该从哪些文件、采用什么样的存取方法、读取哪些物理记录;

    *数据库管理系统向操作系统发出读物理记录的命令;

    *操作系统执行读物理记录的有关操作,将物理记录送至缓冲区;

    *数据库管理系统根据子模式/模式映像,导出应用程序所要读取的记录格式,返回给应用程序。

    相关文章

      网友评论

          本文标题:MYSQL-数据库基础

          本文链接:https://www.haomeiwen.com/subject/fbtrectx.html