首页 > 数据库 >数据库个人笔记(持续更新中)

数据库个人笔记(持续更新中)

时间:2023-08-11 10:38:00浏览次数:41  
标签:关系 笔记 数据库 模式 更新 数据 数据模型 属性


第一章 绪论

1.1数据库系统概述

数据(Date)

数据库(DB):长期储存在计算机中,有组织、可共享的大量数据集合。具有低冗余度高数据独立性易扩展的特点

数据库管理系统(DBMS):是计算机基础软件,有以下几个功能:

  • 数据定义功能,提供数据定义语言(DDL)
  • 数据组织、存储和管理
  • 数据操作功能,提供数据操纵语言(DML)
  • 数据库事务处理和运行管理,用于保证事务的正确性和数据安全性等
  • 数据库的建立和维护功能
  • 其他功能

数据库系统(DBS):由数据库+数据库管理系统(及相关应用开发工具)+应用程序+数据库管理员组成的

1.2数据模型

将具体事务转换为可处理的数据,对现实的模拟

1.2.1两类数据模型

第一类:概念模型:按照用户要求对数据和信息建模

第二类:逻辑模型:包括层次模型、网状模型、关系模型、面向对象数据模型和对象关系数据模型、半结构化数据模型

第二类:物理模型:描述数据在系统内部的表示方式和存储方法

1.2.2概念模型

实体+属性+码+实体型+实体集+联系

1.2.3数据模型的组成元素

数据结构

数据操作

数据的完整性约束条件

1.2.4常用数据模型

层次模型

优点:

  • 结构简单
  • 查询效率高
  • 提供了良好的完整性支持

缺点:

  • 现实中很多联系没有层次结构

  • 如果含有多个双亲结点就会导致数据冗余

  • 查询子结点必须通过父节点

  • 结构死板

网状模型

优点:

  • 更能直观的反应世界
  • 具有良好的性能

缺点:

  • 结构复杂
  • DDL、DML复杂且需要嵌套高级语言
  • 需要选择合适的存取路径

关系模型*

最重要的一种模型

关系:一个关系对应一张表
元组:一行
属性:一列的第一个名称即为属性名
码:码键,某个属性可以确定一个唯一的元组称为该关系的码
域:属性的取值范围
分量:元组中的一个属性值
关系模式:对关系的描述,一般为:关系名(属性1,属性2,...)

1.3数据库系统结构

数据模型中有“型(type)”和“值(value)”两种概念,而数据库系统结构中包含了“模式”和“实例”两种概念。

1.3.1数据库系统三级模式结构

模式(逻辑模式):是数据库中全体数据的逻辑结构和特征的描述,一个数据库只有一个模式,既不涉及硬件又不涉及应用程序,需要用DDL严格定义模式

外模式(用户模式):用户能够看见使用的局部数据结构和特征,即为模式的子集,每个用户所看到的外模式不同,需要用DDL严格定义模式

内模式(存储模式):一个数据库只有一个内模式,他是数据的物理结构和存储方式的描述,是数据在数据库内部的组织方法。

1.3.2数据库的二级映像功能与数据独立性

外模式/模式映像:当模式改变时通过对该映像进行相应改变可以保证外模式不需要改变,从而保证应用程序不变。

模式/内模式映像:因为模式与内模式都是唯一的,所以该映像是唯一的,它可以保证当物理存储结构发生改变时模式保持不变,从而保证应用程序不变。



第二章 关系数据库

2.1关系数据结构和定义

2.1.1关系

1.域:具有相同属性的集合,如{0,1}、{自然数、0}

2.笛卡尔积:D1xD2xD3 = {(d11,d21,d31),(d12,d22,d32),(...),...}

3.关系:R(D1,D2,D3,...,Dn),笛卡尔积的子集,n称为目或者度
当n=1时称为单元关系;当n=2时称为二元关系

因为关系是笛卡尔积的子集,所以也是一张二元表, 表中的域则称为属性

关系有三种类型:基本表、查询表(查询结果对应的表)、视图表(虚表,不存信息,仅供展示)

2.2.2关系模式

数据库要区分,关系数据库中关系是值,关系模式则是型
$$
R(U,D,DOM,F)
$$
R:关系名

D:该关系属性名的集合

DOM:属性向域的映射集合

F:属性间数据的依赖关系集合

2.2关系操作

2.2.1基本关系操作

常用关系操作 = 查询 + 插入、删除、修改

查询(关系代数) = 选择+投影+并+差+笛卡尔积

2.3关系的完整性

2.3.1实体完整性

关系中每个元组都是可区分的,唯一的

若属性A是关系R的主属性,则其不能取空值且唯一

2.3.2参照完整性

即关系R的外键应为S的主键,让R和S能够相关联。

2.3.3用户定义完整性

用户定义的每个属性的取值范围

2.4关系代数

一种抽象的查询语言,通过关系的运算来表示查询

2.4.1传统集合运算

2.4.2专门的关系运算

选择

投影

连接

2.5关系演算



第三章 SQL

标签:关系,笔记,数据库,模式,更新,数据,数据模型,属性
From: https://www.cnblogs.com/sfjzz/p/17622369.html

相关文章

  • 神通数据库根据归档日志恢复数据
    1、执行这个sql语句;CREATETABLET_TMPASSELECTversions_xidXID,versions_startscnSTART_SCN,versions_starttimeSTART_TIME,versions_endscnEND_SCN,versions_endtimeEND_TIME,versions_operationOPERATION,IDFROMTJ_ARCH_GC.T_AR_FPDA_FILEVERSIONSBETWEEN......
  • Javascript学习笔记-js实现拷贝复制功能
    /***复制单行内容到粘贴板*content:需要复制的内容*message:复制完后的提示,不传则默认提示"复制成功"*/functioncopyToClip(content,message){varaux=document.createElement("input");aux.setAttribute("value"......
  • 《CUDA编程:基础与实践》读书笔记(4):CUDA流
    1.CUDA流一个CUDA流指的是由主机发出的在一个设备中执行的CUDA操作序列。除主机端发出的流之外,还有设备端发出的流,但本文不考虑后者。一个CUDA流中的各个操作按照主机发布的次序执行;但来自两个不同CUDA流的操作不一定按照某个次序执行,有可能是并发或者交错地执行。任何CUDA操作......
  • dus on tree学习笔记
    前言dusontree就像其实就像是暴力,但是通过选择正确的顺序,使得暴力变得更加的快速。算法思路查看题目给出一颗n个节点的树,每个节点有一个颜色,询问你没个节点的子树中有多少中颜色。显然,我们知道暴力扫的话是枚举每个点,再暴力去找他的子树,显然在暴力的情况下是\(O(n......
  • Programming abstractions in C阅读笔记:p91-p106
    《ProgrammingAbstractionsInC》学习第45天,p91-p102,完成第二章内容学习。总结如下:一、技术总结1.垃圾回收p91,"Somelanguage,includingJavasupportasystemfordynamicallocationthatactivelygoesthroughtoseewhatpartsofitareused,freeinganystorageth......
  • [刷题笔记] [JSOI2010] 连通数
    DescriptionProblem由于题目太短我直接上图罢Analysis题目描述非常简单,但是直接爆搜肯定会TLE,毕竟\(n\leq2000\)并且timelimit=300ms。我们发现如果题目保证无环直接topsort即可,问题就在环上,如何处理环呢?我们可以缩点,缩点笔记,显然我们只需要统计答案数,缩完点后就变成了......
  • 《深入理解Java虚拟机》读书笔记:垃圾收集算法
    由于垃圾收集算法的实现涉及大量的程序细节,而且各个平台的虚拟机操作内存的方法又各不相同,因此本节不打算过多地讨论算法的实现,只是介绍几种算法的思想及其发展过程。垃圾收集算法概要 1、标记-清除算法标记-清除算法最基础的收集算法是“标记-清除”(Mark-Sweep)算法,算法分......
  • centos 安装下载mongodb数据库
    mongodb下载安装官网:https://www.mongodb.com/try/download/communitytar-zxvfmongodb-linux-x86_64-rhel70-4.4.17.tgzmvmongodb-linux-x86_64-rhel70-4.4.17/usr/local/mvmongodb-linux-x86_64-rhel70-4.4.17/mongodbcd/usr/local/mongodbmkdirdatalogscd......
  • GAMES101笔记(04)
    本篇对应的是第七课上节课讲完了光栅化的内容,这节课讲的有深度测试,光照和着色深度测试我在学校看shader入门精要的时候有些印象,但也仅此而已了,我觉得还是要先补一下图形学的知识再去啃入门精要会好一些 深度缓存在计算机成像时,对于一个我们要输出的画面,如何确保画面上的东......
  • Tidb异名恢复Mysql数据库的过程
    Tidb异名恢复Mysql数据库的过程背景先说坑:TiDB备份恢复的方式1.mysqldump+mysqlsource的方式.2.mydumper+loadertidb的一个工具组件3.lightningdumpling的备份恢复方式是4.brbackuprestore备份恢复的方式.好像除了方式1都没提供明确的更换数据库的......