MySql教程

MySQL数据库 第1章:数据库入门

本文主要是介绍MySQL数据库 第1章:数据库入门,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

MySQL数据库 第1章:数据库入门

  • 1.1 数据库基础
    • 1.1.1 数据库概述
    • 1.1.2 数据库技术的发展
    • 1.1.3 三级模式和二级映像
    • 1.1.4 数据模型
    • 1.1.5 关系运算
    • 1.1.6 SQL语言
    • 1.1.7 常见数据库产品
  • 1.2 MySQL安装
    • 1.2.1 获取MySQL
    • 1.2.2 安装MySQL
    • 1.2.3 配置MySQL
    • 1.2.4 管理MySQL服务
    • 1.2.5 用户登录与设置密码
    • 1.2.6 MySQL客户端的相关命令
  • 1.3 常用图形化工具
    • 1.3.1 SQLyog
    • 1.3.2 Navicat
  • 1.4 总结

1.1 数据库基础

数据库(Database,DB)

1.1.1 数据库概述

数据库是按照数据结构来组织存储管理数据的仓库

这里需要理解三个概念:数据库数据库管理系统数据库应用程序

数据库
提供存储空间来存储数据的一个容器

数据库管理系统(Database Management System,DBMS):
专门用来创建和管理数据库的一套软件,介于应用程序和操作系统之间,比如MySQLOracleSQL ServerDB2postgresql

数据库应用程序
数据库管理系统很多时候无法满足用户对数据库的管理需求,此时就需要使用数据库应用程序与数据库管理系统进行通信、访问和管理DBMS中存储的数据。常见的数据库应用程序有:SQLyogNavicatDbVisualizer

他们之间的关系如下图所示:
在这里插入图片描述

1.1.2 数据库技术的发展

数据库技术经历了三个发展阶段:

  1. 人工管理阶段
  2. 文件系统阶段
  3. 数据库系统阶段

1.1.3 三级模式和二级映像

三级模式:数据库管理系统从三个层次来管理数据,分别是外部层(External Level)、概念层(Conceptual Level)和内部层(Internal Level),这三个层次分别对应三种模式,分别是外模式(External Schema)、概念模式(Conceptual Schema)和内模式(Internal Schema)。

二级映像:外模式和概念模式之间,概念模式和内模式之间还存在映像,即二级映像。

他们之间关系如下所示:
在这里插入图片描述
外模式:面向应用程序,用于描述用户的数据视图(View)

内模式:又称为物理模式、存储模式,描述数据在磁盘中如何存储的

概念模式:又称为逻辑模式,描述数据的整体逻辑结构的。

为了更好理解,以Excel表格类比成数据库:

  1. 概念模式:类似与表格的列标题,描述了表格中都包含哪些信息。
  2. 内模式:将Excel表格另存为文件时,可以选择保存的文件路径、保存类型(如xls,xlsx,csv等格式),这些与存储相关的描述信息相当于内模式。在数据库中内模式描述数据的物理结构和存储方式。
  3. 外模式:外模式可以为不同的用户需求创建不同的视图(视图就是基本表中查询出的部分数据就是一个视图)
    因此,一个数据库可以有多个外模式,但概念模式和内模式则只有一个。

1.1.4 数据模型

数据库发展的过程中出现了3种数据模型:层次模型、网状模型、关系模型

建立在关系模型之上的数据库叫做关系型数据库,本文所讲mysql就是一个关系型数据库。

要理解关系模型就要先理解一些概念:数据建模、概念模型的术语、E-R图、关系模型、关系模型的完整性。

  1. 数据建模
    数据建模是对现实世界中的各类数据的抽象组织,以确定数据库的管辖范围、数据的组织形式等。
    数据建模大致分为3个阶段:
    在这里插入图片描述
    数据建模的过程如下:
    在这里插入图片描述

  2. 概念模型的术语
    实体(Entity)是指客观存在并可相互区分的事物。
    例如,学生、班级、课程都是实体。
    属性(Attribute)是指实体所具有的某一特性,一个实体可由若干个属性来描述。
    例如,学生实体的属性有学号、学生姓名和学生性别。
    属性由两部分组成,分别是属性名属性值
    例如,学号和学生姓名是属性名,而“1、张三”这些具体值是属性值。
    联系(Relationship)是指实体与实体之间的联系,有一对一一对多多对多三种情况。
    例如,每个学生都有一个学生证,学生和学生证之间是一对一的联系;一个班级有多个学生,班级和学生是一对多的联系;一个学生可以选修多门课程,一门课程又可以被多个学生选修,学生和课程之间就形成了多对多的联系。
    实体型(Entity Type)实体类型,通过实体名(如学生)及其属性名集合(如“学号、学生姓名、学生性别”)来抽象描述同类实体。
    实体集(Entity Set)是指同一类型的实体集合,如全校学生就是一个实体集。

  3. E-R图
    E-R图也称为实体-联系图(Entity Relationship Diagram)。
    E-R图是一种用图形表示的实体联系模型,E-R图提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。

E-R图通用的表示方式如下。
实体:用矩形框表示,将实体名写在框内。
属性:用椭圆框表示,将属性名写在框内,用连线将实体与属性连接。
联系:用菱形框表示,将联系名写在框内,用连线将相关的实体连接,并在连线旁标注联系类型(一对一“1:1”、一对多“1:n”、多对多“n:m”)。

在这里插入图片描述

图1 学生与班级的ER图

在这里插入图片描述

图2 学生与课程的ER图
  1. 关系模型
    关系(Relation)用于反映元素之间的联系和性质。从用户角度来看,关系模型的数据结构是二维表,即通过二维表来组织数据。
    一个关系对应一张二维表,表中的数据包括实体本身的数据和实体间的联系。
    在这里插入图片描述
    属性(Attribute):二维表中的列称为属性,每个属性都有一个属性名。
    元组(Tuple):二维表中的每一行数据称为一个元组。
    域(Domain):域是指属性的取值范围,例如,性别属性的域为男、女。

  2. 关系模型的完整性
    关系模型的完整性:为了保证数据库中数据的正确性相容性,需要对关系模型进行完整性约束。完整性通常包括实体完整性参照完整性用户自定义完整性
    实体完整性:要求关系中的主键不能重复,且不能取空值。空值是指不知道、不存在或无意义的值。
    参照完整性:要求关系中的外键要么取空值,要么取被参照关系中的某个元组的主键值。
    用户自定义完整性:是用户针对具体的应用环境定义的完整性约束条件,由DBMS检查用户自定义的完整性,比如用户名不允许重复等。

1.1.5 关系运算

关系模型可以使用关系代数(Relational Algebra)来进行关系运算。

关系代数是一种抽象的查询语言,是研究关系模型的数学工具。

关系代数运算符主要包括笛卡尔积选择投影连接

在这里插入图片描述

关系代数运算符

并(Union)、差(Difference)、交(Intersection)
并、差、交运算要求参与运算的两个关系具有相同数量的属性。运算结果是一个具有相同数量属性的新关系。

设有关系R和关系S
R∪S表示合并两个关系中的元组,数学描述:R∪S={t | t∈R ∨ t∈S}
R-S表示找出属于R但不属于S的元组,数学描述:R-S={t | t∈R ∧ t∉S }
R∩S表示找出既属于R又属于S的元组,数学描述:R∩S={t | t∈R ∧ t∈S}
∨表示逻辑运算符或,∧表示逻辑运算符与
在这里插入图片描述
笛卡尔积(Cartesian Product)设关系R有n个属性,关系S有m个属性
R和S的笛卡尔积:元组的前n个属性来自R,后m个属性来自S。
结果属性个数=n+m,结果元组的总个数=R和S中的元组的乘积。
数学描述:假设R(<

这篇关于MySQL数据库 第1章:数据库入门的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!