zoukankan      html  css  js  c++  java
  • MySQL数据库基础

    本文来自《MySQL从入门到精通》国家863中部软件孵化器 编著。仅为个人笔记,若想了解更多,建议买书详读。

    一)准确认识数据、数据库、数据库系统、数据库管理系统

      1)数据(Data)是数据库中存储的基本对象,是数据库存储的最基本元素。

      2)存储数据的“仓库”称之为数据库(Dataase, DB);

      3)数据库管理系统(Database Management System ,DBMS)是用于创建、管理和维护数据库时所使用的软件,介于用户和操作系统之间,可对数据库进行管理;

      4)数据库系统包括3个主要的组成部分:

       i)数据库,用于存储数据的存储空间;

       ii)数据库管理系统,用于管理数据库的关键;

       iii)数据库应用程序:为了提高数据库系统的处理能力所使用的管理数据库的软件补充。

    二)与其他数据库管理系统相比较,MySQL的优势

      1)MySQL是一个关系数据库管理系统;

      2)MySQL是开源的;

      3)MySQL服务器是一个快速、可靠和易于使用的数据库服务器;

      4)MySQL服务器工作在客户/服务器或嵌入系统中;

      5)有大量的MySQL软件可以使用。

    三)关系型数据库模型

      关系型数据模型的结构

      在数据库技术中,用模型的概念描述数据库的结构和语义,对现实世界进行抽象。能表示实体类型及实体间联系的模型称为“数据模型”。数据模型的种类很多,广泛使用的分为两种:

      i)一种是独立与计算机系统的数据模型,完全不涉及信息在计算机中的表示,只是用来描述某个特定组织所关心的信息结构,这种模型称为“概念数据模型”,它是对现实世界的第一层抽象,典型代表是“实体---关系模型”。

      ii)另一种数据模型是直接面向数据库的逻辑结构,它是对现实世界的第二层抽象。这种模型直接与数据库管理系统有关,称为“逻辑数据模型”。

      逻辑数据模型包括:层次模型、网状模型、关系模型和面向对象模型。前两者很少用,目前理论成熟、使用普及的模型就是关系模型。逻辑数据模型应该包括数据结构、数据操作和数据完整性约束3个部分。

      1)关系模型

      关系模型是由若干个关系模式组成的集合,关系模式的实例称为关系,每个关系实际上是一张二维表格。

      关系数据库是以关系模型为基础的数据库,是一种根据表、元组、字段之间的关系进行组织和访问数据的数据库,它通过若干个表来存取数据,并且通过关系将这些表联系在一起。典型产品有:DB2、Oracle、SQL Server等。

      关系模型有3个部分组成:数据结构、数据操作和完整性规则

      1.1)关系模型中的一些术语:

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

      b)元组(Tuple):表中的一行即为一个元组,表中任意两行(元组)不能相同;

      c)属性(Attribute):表中的一列即为一个属性,给每个属性起一个名称即属性名,表中的属性名不能相同;

      d)主键(Key):表中的某个属性组,可以唯一确定一个元组

      e)域(Dmain):列的取值范围称为域;

      f)分量:元组中的一个属性值;

      g)关系模式:对关系的描述,可表示为:关系名(属性1,属性2......属性n),如:学生(学号,姓名,年龄,性别,系别)。

      一个关系模型是多个关系模式的集合。在关系模型中,实体以及实体间的联系都是用关系来表示的。如,学生、课程、学生与课程之间的多对多联系在关系模型中可以如下:

      学生(学号,姓名,年龄,性别,系别)

      课程(课程号,课程名,学分)

      选修(学号,课程号,成绩)

      关系和传统的二维表格既有相似之处,又有区别,严格说,关系时一种规范化的二维表格,具有如下性质:

      a)属性值具有原子性,不可分;

      b)没有重复的元组;

      c)理论上没有行序,但使用时有时可以有行序。

      1.2)关键码(简称键)

      键是用来标识行(元组)的一个或者几个列(属性)。若,键是唯一的属性,则称为唯一键;反之由多个属性组成,则称为复合键。键的类型如下:

      a)超键:在一个关系中,能唯一标识元组的属性或属性集称为关系的超键。

      b)候选键:若,一个属性集能够唯一标识元素,且不含有多余的属性,这个属性集称为关系的候选键。

      c)主键:若,一个关系中有多个候选键,则选择其中一个键称为关系的主键;

      d)外键:若,一个关系R中包含另一个关系S的主键所对应的属性组F,则称此属性组F为关系R的外键,并称关系S为参照关系,关系R时依赖关系。为了表示关联,可将一个关系的主键作为属性放入另外一个关系中,第二关系中的那些属性就称为外键。

      如:有一个出版社表用来描述出版社的各种信息,如,电话、地址等,在该表中使用“出版社编号”作为主键,为表示图书与出版社之间的联系,可将出版社表中的主键“出版社编号”作为新列添加到图书明细表中,这样,图书明细表中的“出版社编号”就称为外键。出现外键时,主键与外键的列名名称可以是不同,但是必须要求它们的值相同。

      1.3)关系模型的完整行规则是对数据的约束。

      关系模型提供了3种完整行规则:实体完整性规则、参照完整性规则和用户定义的完整性规则。前两者是关系模型必须满足的完整性约束条件,称为关心完整性规则。

      i)实体完整性:值关系的主属性(主键的组成部分)不能为NULL,即不能是不知道或者不能使用的值。

      ii)参照完整性:如果关系的外键R1与关系R2中的主键相符,则,外键中的每个值必须在关系R2中主键的值中找到或者是空值。

      1.4)关系型数据模型的存储结构

      关系数据模型以关系数学理论为基础,用二维表结构来表示实体以及实体之间的联系的模型称为关系模型。

      关系模型原理的核心内容就是规范化概念,规范化是吧数据库组织成在保持存储数据完整性的同时最小化冗余数据的结构的过程。

    四)MySQL数据库系统的体系结构

      MySQL是由SQL接口、解析器、优化器、缓存、存储引擎组成。

  • 相关阅读:
    【Linux笔记】Linux目录结构
    《Effective C#》快速笔记(五)-
    《Effective C#》快速笔记(四)- 使用框架
    《Effective C#》快速笔记(三)- 使用 C# 表达设计
    《Effective C#》快速笔记(二)- .NET 资源托管
    《Effective C#》快速笔记(一)- C# 语言习惯
    Visual Studio 数据库架构比较
    C# 反射与dynamic最佳组合
    C# 调用WebApi
    基于微软开发平台构建和使用私有NuGet托管库
  • 原文地址:https://www.cnblogs.com/love-yh/p/7123533.html
Copyright © 2011-2022 走看看