MySQL——学习笔记【待续】

数据库基础

DBMS主要功能

  • 数据库的定义功能
    把用DDL编写的各级…
  • 数据库的操作功能
    单独数据操作语言DML及其编译程序,实现对数据库的基本操作。基本操作有两类检索和更新
  • 数据库的保护功能
    数据库的数据恢复、数据库的并发控制、数据完整性控制和数据安全性控制
  • 数据库的维护功能
    数据库的数据导入、转换、存贮、数据库性能监控等。

DBMS的优点

  • 相互关联的数据的集合
  • 较少的数据冗余
  • 程序与数据相互独立
  • 保证数据的安全、可靠、正确
  • 数据可以并发使用并能同时保证一致性

数据库系统(DBS)

1、数据库系统的发展经历了3个阶段:

  • 网状模型(图形结构)
  • 层次模型(树形结构)
  • 关系模型(简单二维表结构)

2、DBS的基本概念

信息和数据

关系数据库系统

(实体-联系-模型)

实体:
客观事物在信息世界中称为实体(Entity),它是现实世界中任何可区分、识别的食物
属性:
描述实体或者联系的性质或者特征的数据项
联系:
反应事物内部或事物之间的关联集合
常见的实体联系有三种:一对一、一对多、多对多

关系模型(Relational Model)

关系的基本概念
  • 关系:一个关系就是一张二维表,通常将一个没有重复行、重复列的二维表看成一个关系,每个关系都有一个关系名
  • 元祖:二维表的每一行在关系中被称为元祖。在MySQL中,一个元祖对应表中的一个记录
  • 属性:二维表中的每一列在关系中称为属性,每个属性都有一个属性名,属性值则是各个元组的取值(字段——列)
  • 域:属性的取值范围称为域。同一属性只能在相同域中取值
关系模式
  • 对关系的描述称为关系模式,其格式为:
    - 关系名(属性名1 , 属性名2 , … , 属性名n)
关系的基本特点
  • 在关系模型中,关系具有以下特点:
    • 关系必须规范化,属性不可再分割。
      • 注意:(例如:为学生表添加 " 班级 " 字段,是不合理的,因为班级可以再分割,如班级的教师,班级的授课老师等)
    • 在同一关系中不可出现相同的关系名
    • 在同一关系中,元组(即记录)的顺序可以任意
    • 在同一关系中,属性(即字段)的顺序可以任意
关系运算
  • 关系运算主要有选择、投影和连接三种
    • 选择:从关系模式中选择若干元组组成新的关系
      - (从行的角度进行的运算)
    • 投影:从关系模式中指定若干属性组成新的关系
      - (从列的角度进行的运算)
    • 连接:从两个关系的笛卡尔积中选取属性间满足一定条件的元组,组成新的关系

注意:数据的连接并不是都有价值的

学生表
学生ID 姓名 班级
000001 学生1 01班
000002 学生2 02班
班级表
班级ID 班级
01 01班
02 02班

对上述两张表使用笛卡尔积进行连接:

笛卡尔积连接所得的表
学生ID 姓名 班级 班级ID 班级
000001 学生1 01班 01 01班
000001 学生1 01班 02 02班
000002 学生2 02班 01 01班
000002 学生2 02班 02 02班

可见,有笛卡尔积连接两个表所得结果会出现没有价值的数据;所以,笛卡尔积需要结合条件筛选达到效果。

关系的完整性约束

实体完整性

主属性值(主关系键的值)不能为空

如:学生信息表中的学号不可为空

参照完整性(引用完整性)

简单来说就是主键与外键的关系

如:学生表与选课表之间用学号建立关联。学生表是主表,选课表是从表。若向从表中输入一条新纪录,系统会检查记录的学号是否在主表中存在。若存在,则允许操作,否则将拒绝输入。

域完整性(用户定义完整性)

猜你喜欢

转载自blog.csdn.net/qq_36323561/article/details/105220247