数据库原理基础一[通俗易懂]

数据库原理基础一[通俗易懂]数据的分类: 结构化数据:有固定的格式,例如一个表格里面的信息 非结构化数据:无固定格式,例如图片、网页、语音、视频 半结构化数据:html、xml格式的数据 数据库:存放数据的一个集合,可以是文件的

数据库原理基础一

数据的分类:
  • 结构化数据:有固定的格式,例如一个表格里面的信息

  • 非结构化数据:无固定格式,例如图片、网页、语音、视频

  • 半结构化数据:html、xml格式的数据

数据库:存放数据的一个集合,可以是文件的方式,也可以是其他的方式。

数据库的发展:
  • 萌芽阶段:文件系统

使用磁盘文件来存储数据,比如一个文档里面存了很多数据内容。
缺点:管理不方便,且容易造成文件的损坏、安全性差。

  • 初级阶段:第一代数据库

出现了网状模型、层次模型的数据库

  • 中级阶段:第二代数据库

关系型数据库和结构化查询语言

  • 高级阶段:新一代数据库

“关系-对象”型数据库

相关概念
  • DBMS:Database Management System,数据库管理系统,就是一个应用软件,实现对数据的管理。例如mysql、orcler、redis等。

  • Database:数据库

  • DBA:Database Administrator(DBA)数据库管理员

  • Application:应用程序,用户访问数据不是直接通过DBMS来进行访问的。通过一些图形界面软件等来访问这些数据。例如京东、淘宝等。

DBMS工作逻辑:数据放在磁盘上,用户通过工具访问DBMS,然后DBMS访问到对应的数据。

数据库结构:
  • 单机架构:数据库就在一个机器上,只能通过这个机器来操作数据库,例如access

  • 主从架构(C/s):客户端-服务器,将要客户端和服务器区分开,通过客户端发送请求来和服务器交互。

  • 分布式架构:把数据分散在多个地方,不是集中在一起。

各种数据库管理系统:
  • 层次结构:按层(树状结构)组织数据,容易产生冗余

  • 网状结构:关系复杂,不容易管理

  • 关系型数据库:RDBMS,

关系型数据库相关概念:把所有数据放在一张二维表里面
  • 关系:就是一张二维表,

  • 行:row,称为记录,每一行称为一条记录(record)

  • 列:column,称为属性、字段或者域(field)

  • 主键:Primary key,一个或者多个字段的组合,主键不能为空且不能重复

  • 唯一键:Unique key, 一个或多个字段的组合,不能重复但可以为空

  • 域:domain,属性的取值范围。

常用的关系型数据据:
  • mysql: MySQL, MariaDB, Percona Server

  • oracle

  • DB2

  • PostgreSQL

实体-联系模型E-R:
  • E-R:描述数据库存储数据的结构模型

  • 实体Entity:用矩形表示,例如课程、班级、学生等

  • 属性Attribute:用椭圆形表示,描述实体的特征

  • 联系Relationship:实体的属性之间的关联规则

E-R模型的联系类型:
  • 一对一: 假设有两张表,一张存姓名,另一个存身份证,一个人只能有一个身份证。
  • 一对多:假设两张表部门和员工,一个部门能有多个员工信息。
  • 多对多:假设两张表课程和学上。一个学生能拥有多门课程,一个课程也能被多个学生选择。
数据库的操作:
  • 增加:Insert
  • 删除:Delete
  • 查找:Select
  • 修改:Update
数据库的规范化:

作用:减少数据的冗余,增进数据的一致性。越高的范式数据库冗余越小

  • 第一范式(1NF):无重复列、一列不能有多个值

  • 第二范式(2NF):表中的每一条记录都能被唯一区分(通过主键区分),某一个非主键的字段要依赖整个组件,而不能只依赖部分主键(多个字段组成一个逐渐)。

  • 第三范式(3NF):非主键的字段之间不能有从属关系

注意:满足第一范式的数据库才能称为关系数据库。

SQL
  • SQL:Structure Query Language,结构化查询语言。SQL配套关系型数据库使用的。

  • SQL解释器:将SQL语句解释成机器语言

  • 数据存储协议:应用层协议,C/S
    S:server, 监听于套接字,接收并处理客户端的应用请求
    C:Client

数据约束:
  • 约束:constraint,需要遵守的限制
常见的约束:
  • 主键:primary key,一个或多个字段的组合,非空且唯一。

  • 唯一键:unique key, 一个或者多个字段的组合

  • 非空:not null

  • 外键:foreign key,用来建立表和表之间的关系。外键的字段依赖于另一张表的字段。

  • 默认:default,默认值

  • 检查:字段值的一个范围

主键和外键的区别:
  • 主键:primary key
    作用:用于惟一地标识表中的某一条记录,确保每列的原子性。
    形式:主键可以由一个字段,也可以由多个字段组成,分别成为单字段主键或多字段主键
    其他:建立主键会生成唯一索引,一个表只能建一个主键。

  • 外键:foreign key
    作用:保持数据一致性,完整性,主要目的是使两张表形成关联,并控制存储在外键表中的数据。
    形式:建立外键的表为“从表”,外键依赖的表为“主表”,主表是从表的“外表”
    其他:外键只能引用外表中的列的值!一个表只能建一个外键。
    建立外键的列,必须是外表的主键,并且字段类型必须一致。

关系运算:
  • 选择:筛选行(记录)

  • 投影;(cut)筛选列

  • 连接:表和表之间的关系。比如外键。

原文地址:https://www.cnblogs.com/heyongshen/archive/2022/09/06/16662555.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/4806.html

(0)
上一篇 2023-06-04
下一篇 2023-06-04

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注