首页 > 数据库 >数据库原理基础一

数据库原理基础一

时间:2022-09-06 17:22:10浏览次数:74  
标签:一个 数据库 基础 外键 key 原理 数据 主键

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

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

  • 半结构化数据: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)筛选列

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

标签:一个,数据库,基础,外键,key,原理,数据,主键
From: https://www.cnblogs.com/heyongshen/p/16662555.html

相关文章

  • 记录一下~~~Linux配置定时任务备份数据库dmp文件
    1.创建备份目录:mkdir-p/dcits/sx_xmz/sx_data_bakchown-Roracle18c:oinstall/dcits/sx_xmz/sx_data_bak2.脚本文件编写vidatabak.sh输入如下内容#设置环节......
  • 达梦数据库图形化工具
    图形化工具列表(1)DM数据库配置助手(2)DM服务查看器(3)DM管理工具(4)DM控制台工具(5)DM数据库迁移工具(6)DM性能监测工具图形化工具详解界面展示DM数据库配置助......
  • MPLS LDP原理
    LDP协议基本概念LDP是MPLS的一种控制协议,相当于传统网络中的信令协议,负责FEC的分类、标签的分配以及LSP的建立和维护等操作。LDP规定了标签分发过程中的各种消息以及相关......
  • 分布式事务原理及解决方案案例
    事务的具体定义事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。在关系数据库中,一个事务由一组SQL语句组成。事务应该具有4个属性:原子性......
  • 数据库管理工具DBeaver
    DBeaverEnterprise企业版是一款优秀的数据库管理工具,支持管理众多数据库产品,MySQL,Oracle,SQLserver,Redis,MongoDB,Redis、MongoDB,ApacheHive,几乎支持市面上你见过的,没见过的......
  • SSL/TLS工作原理:密钥、证书、SSL握手
    SSL/TLS的工作原理是通过称为X.509证书的数字文档将网站和公司等实体的身份绑定到加密密钥对。每个密钥对由一个私钥和一个公钥组成。私钥保持安全,公钥可以通过证书广泛分......
  • 【Java基础】方法重写Override
    1.什么是方法重写子类对父类中同名同参数的方法进行重写覆盖。publicclassPerson{publicvoidsay(){System.out.println("父类中的方法");}}......
  • ASP.NET Core 01基础知识概述
    Program.cs使用Web模板创建的ASP.NETCore应用包含Program.cs文件中的应用程序启动代码。Program.cs文件中包含:已配置应用所需的服务。应用的请求处理管道定义......
  • Mysql数据库增删改查
    数据库显示数据库showdatabases;显示数据表showtables;选择数据库usemysql;创建数据库createdatabasehaige;删除数据库dropdatabasehaige;刷新权限flushprivilege......
  • C# 处理多语言的基础类
    1usingNewtonsoft.Json;2usingNewtonsoft.Json.Linq;3usingSystem.IO;4usingSystem.Text;56namespaceTestDemo7{8///<summary>9......