[数据库] 01- 数据库基础

564 0
Honkers 2026-1-14 02:28:35 来自手机 | 显示全部楼层 |阅读模式

为什么要学习数据库?

1、数据库管理的几个阶段

  • 人工管理阶段
  • 文件管理阶段
  • 数据库管理阶段

2、数据库管理的特点

  • 数据结构化
  • 冗余度低
  • 数据独立性高
  • 由数据库系统统一管理控制

3、数据库要学什么?

数据关系理论
数据库的操作
增删改查-重点

3.1 什么是数据库?

**数据库:**英文单词DataBase,简称DB。按照一定格式存储数据的一些文件的组合。
**顾名思义:**存储数据的仓库,**数据的集合。**实际上就是一堆文件。这些文件中存储了具有特定格式的数据。

3.2 SQL - 结构化查询语言

程序员需要学习SQL语句,程序员通过编写SQL语句,然后DBMS负责执行SQL语句,最终来完成数据库中数据的增删改查操作。
**本质:**是一套标准。程序员只要学习的就是SQL语句包,这个SQL在mysql中可以使用,同时在Oracle也可以使用。

3.3 什么是数据库管理系统?

**数据库管理系统:**DataBaseManagement,简称DBMS。
**作用:**专门管理数据库中的数据的,数据库管理系统可以对数据库当中的数据进行增删改查。
**类型:**层次型、网状型、关系型(本课程主要学习)。
**常见的数据库管理系统:**MySQL,Oracle、MS SqlServer、DB2、sybase等…

3.4 MB、DBMS、SQL之间的关系?

DBMS–执行 --> SQL – 操作 --> DB

4、概念模型

  • 概念模型是现实世界到机器世界的一个中间层次(类比C++)
  • 实体(entity):客观存在并可以相互区分的事物(对象)
  • 属性(attribute):实体所具有的某一个特性(成员)
  • 实体型(entity type):学生(学号,姓名,出生日期),具有相同属性的实体是同一个实体型

5、 关系数据库

关系型数据库概念

  1. 一个表被称为一个关系(实体)。
  2. 表中的行(或记录)叫做元组。
  3. 列(或字段)叫做属性。
  4. 行是无序的,每个行必须右列或列的组合来唯一的标识表中的每一行,这个被叫做表的主键(PK)。

**主键:**可唯一标识表中行的键。
类型:

  1. 主键:被选作唯一确定一行的属性。
  2. 复合键:用两个或两个以上的属性组合成为主键。

实体与实体之间存在三种关系:
1对1


1对多


多对多


实体与实体之间的数量关系:

  • 一个老师可以教(多)门课程。 – 一对多的关系 --> 1:m
  • 一个学生可以选择(多)门课程。
  • 一门课程可以被(多)个学生选。 – 多对多的关系 --> n:m
  • 一个班级有一个正班长。-- 一对一 --> 1:1

6、E-R图(实体关系图)

矩形表示实体
椭圆表示属性
菱形表示关系

7、关系型数据库 VS 非关系型数据库

非关系型数据库(非关系型模型表现实体关系的方法)
非关系模型–JSON格式举例

关系型数据库(关系型模型表现实体的方法)
从集合到关系到表
关系数据库中,只有一种数据结构:表

8、关系型数据库设计步骤

1.画ER图(先给两个属性)
2.关系变表
3.完善属性

9、表

关系型数据库的组织原则是表格:


一个表被称为一个关系(实体)。
表中的行(或记录) 叫作元组。
列 (或字段)叫作属性。
行是无序的。

10、主键

主键(primary key):用来唯一地标识表中的每一行的属性或属性的组合。                


11、关系的实现

ER图中的关系—>数据库中的表。(关系转表)。
如何转换?
如何表示两个表的联系?
如果公共关键字在一个关系中是主关键字(PK),那么这个公共关键字被称为另一个关系的外键(FK)。

12、一对多 转换方式

把一实体中的主键放入到多实体中,成为其外键。例如商店和雇员:也可以建两张表个来表示:
(1)商店ID(PK) 商店名 地址
(2)雇员ID(PK) 雇员姓名 商店ID(FK)

这里,因为是1对多的关系,所以将一实体即商店ID放到多实体雇员表中成为外键。

13、多对多 转换方式

把相关实体中的主键放入到一个新实体中,成为新实体的复合主键。
例如商店和商品:需要建三张表个来表示:
(1)商店ID(PK) 商店名 地址
(2)商品ID(PK) 商品名 价格
(3)商店ID(PK) 商品ID(PK) 卖出总件数 库存数
因为是多对多的关系,所以将商店和商品两个实体的主键拿出来,作为新的一张表的复合主键。

14、关系的实现(关系转表)

1、实体:把实体名转换为关系表名,实体属性转换成表中字段。
2、实体间的关系:根据1对1、1对多、多对多有不同的转换方式。
3、把具有相同主键的表合并。

15、用关系理论分析已学知识

进程与线程
一对多
进程与进程
列表 进程和程序之间可以形成一对一、一对多、多对一、多对多的关系
CRuntimeClass与对象
一对多

附录

现实世界中的数据如何存储到数据库中(E-R图转表)

一对一

一对多

多对多

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

中国红客联盟公众号

联系站长QQ:5520533

admin@chnhonker.com
Copyright © 2001-2026 Discuz Team. Powered by Discuz! X3.5 ( 粤ICP备13060014号 )|天天打卡 本站已运行