【SQL Server + MySQL三】数据库设计【ER模型+UML模型+范式】 + 数据库安全性

news2025/1/12 16:11:01

极其感动!!!当时学数据库的时候,没白学!!

  • 时隔很长时间回去看数据库的笔记都能看懂,每次都靠这份笔记巩固
  • 真的是语雀分享要花钱,要不一定把笔记给贴出来
  • (;´༎ຶД༎ຶ`) ,除了vue和react之外,最常看的一份笔记了!!!!

xd们,一定要收藏粘贴下来,真的没有自夸!!!!

  • 当时学的时候,想来:就一份笔记么?脑子有病的人才一直记来记去的【框框自嘲】!有啥可分享的?现在,真香!!!
  • (302条消息) 【SQL Server + MySQL二 】SQL: DDL数据定义【定义、修改、删除基本表】,DML【憎删改查】,DCL数据控制语言_翼遥bingo的博客-CSDN博客
  • (302条消息) 【SQL Server + MySQL一】数据库基本知识、关系数据模型、关系数据语言–关系代数_翼遥bingo的博客-CSDN博客

文章目录

  • 第四章 数据库设计
    • 4-1 数据库设计
      • 4-1-1 数据库设计步骤
        • 4-1-1-1
        • 4-1-1-2 规划步骤
        • 4-1-1-3 需求分析阶段
        • 4-1-1-4 概念设计--ER方法
        • 4-1-1-5 逻辑设计阶段
        • 4-1-1-6 物理设计阶段
        • 4-1-1-7 数据库的实现
        • 4·-1-1- 8 数据库的运行和维护
      • 4-1-2 概念设计工具
        • 4-1-2-1 数据库概念模式设计-----ER模型
          • 4-1-2-1-1 ER模型的基本元素
          • 4-1-2-1-2 设计局部ER模型
          • 4-1-2-1-3 ER模型 向关系模型的转换
      • 4-1-4 ER模型做逻辑设计
        • 4-1-4-1
      • 4-1-3 UML模型做概念设计和逻辑设计
        • 4-1-3-1 数据建模
        • 4-1-3-2 UML
    • 4-2 逻辑设计工具---关系数据库规范化理论【5.5这里】
      • 4-2-1 数据依赖(FD)
        • 4-2-1-1 回顾
        • 4-2-1-2 关系模式的形式化定义
        • 4-2-1-3 关系模式Student(U,F)中存在的问题
        • 4-2-1-4 函数依赖
          • 4-2-1-4-1 平凡函数依赖与非平凡函数依赖
          • 4-2-1-4-2 完全函数依赖与部分函数依赖
          • 4-2-1-4-3 传递函数依赖
          • 4-2-1-4-4 码
      • 4-2-2 范式(NF)
        • 4-2-2-1 第一范式(1NF)
        • 4-2-2-2 第二范式(2NF)
        • 4-2-2-3 第三范式(3NF)
        • 4-2-2-4 BC范式
      • 4-2-3 关系模式的规范化
        • 4-2-3-1
  • 第五章 数据库安全性
    • 5-1 安全性控制的一般措施
    • 5-2 DCL进行存取权限管理
      • 5-2-1 SQL的授权功能

第四章 数据库设计

4-1 数据库设计

image-20220402145535759

4-1-1 数据库设计步骤

4-1-1-1

  1. 数据库设计(Database Design,DBD): 构造最优的数据模型,建立数据库及其应用系统的过程

  2. image-20220402145807873

    • 软件生存期: 从软件的规划。研制、实现、投入运行后的维护,直到被新的软件所取代而停止使用的整个期间
    • 以数据库为基础的信息系统通常称为数据库应用系统
      • 采集、组织、加工、抽取、综合和传播等功能
    • 数据库应用系统的开发是一项软件工程,“数据库工程”
  3. 数据库系统生存期

    image-20220505113831121

4-1-1-2 规划步骤

  1. 系统调查
  2. 可行性分析
  3. 确定数据库系统的总目标

4-1-1-3 需求分析阶段

  1. 需求说明书的形式,作为以后系统开发的指南和系统验证的依据

  2. 需求分析步骤:

    image-20220402150457848

4-1-1-4 概念设计–ER方法

  1. 主要步骤:
    • 进行数据抽象,设计局部概念模型
      • 实际事物、概念的共同特性
      • 概念结构是对现实世界的一种抽象
    • 局部概念模型综合成全局概念模型
    • 评审
  2. 方法 :
  • 实体联系方法(ER方法)
  • 结果是得到一个与DBMS无关的概念模型

4-1-1-5 逻辑设计阶段

  1. 目的 : 概念设计阶段设计好的概念模型转换成 与选用的具体机器上的DBMS所支持的数据模型 相符合的 逻辑结构(数据库逻辑模型和外模型)
  2. 逻辑设计 ,首先选择DBMS
  3. 主要步骤 :
    • 概念模型转换成 逻辑模型
    • 设计外模型
    • 设计应用程序与数据库的接口
    • 评价模型
    • 修正模型

4-1-1-6 物理设计阶段

4-1-1-7 数据库的实现

4·-1-1- 8 数据库的运行和维护

  1. DBA完成
    • 数据库的转储和恢复

4-1-2 概念设计工具

4-1-2-1 数据库概念模式设计-----ER模型

  1. ER图 【Entity Realationship Model实体联系模型】:
4-1-2-1-1 ER模型的基本元素
  1. 实体 :

    • 实体(Entity)是指数据对象,指应用中可以区别的客观存在的事物
    • 实体集: 同一类实体构成的集合
  2. 联系 :

    • 联系(Relationship) : 一个或多个实体之间的关联关系
    • 联系集: 同一类联系构成的集合
  3. 联系的元数 : 一个联系涉及到的实体集个数,称为该联系的元数度数

    • 一元联系 (递归联系): 同一实体集内部实体之间的联系
    • 二元联系: 两个不同实体集实体之间的联系
  4. 联系类型 :限制参与联系的实体的数目 :

    • 二元联系类型

      • 1:1

        image-20220402153227606

      • 1:n

        image-20220402153345305

      • m:n

        image-20220402153445254

    • 一元联系 :

      • 1:1联系

        image-20220402153544992

      • 1:n联系

        image-20220402153609738

      • m:n

        image-20220402153623021

4-1-2-1-2 设计局部ER模型
    • 确定局部结构范围
    • 确定实体
    • 确定属性
    • 确定实体间联系
  1. 每个实体必须有实体标识符

    image-20220402154615832

  2. 例题

    image-20220402154906095

    image-20220402154808921

4-1-2-1-3 ER模型 向关系模型的转换
  1. ER图转换成 关系模式集的规则

    • 步骤一 ---->实体类型的转换 : 将每个实体类型转换成一个关系模型

      • 实体的属性即为关系模型的属性
      • 实体标识符即为关系模式的键
    • 步骤二: 联系类型的转换 : 不同情况做不同的处理

      • ----> 二元联系类型的转换

        image-20220402171426334

  2. 实体类型转换成关系模型的例子 :

    image-20220402170502363

    image-20220402171404478

4-1-4 ER模型做逻辑设计

4-1-4-1

  1. ER图转换成关系模式集的算法
    • 步骤一(实体类型的转换):将每个实体类型转换成一个关系模式、
      • 实体属性即为关系模式的属性
      • 实体标识符即为关系模式的键
    • 步骤2(联系类型的转换):不同情况做不同的处理

4-1-3 UML模型做概念设计和逻辑设计

4-1-3-1 数据建模

  1. 对于一个特定的应用,如何在数据库中表示数据
    • 设计关系模型方法
      • 关系模型设计理论
      • 概念设计模型
        • E/R----传统的
        • UML子集-----目前常用的

4-1-3-2 UML

    • Unified Modeling Language:统一建模语言
    • UML用于面向对象建模,现在也用于数据库建模
    • UML与E/R模型相似,但是不提供多元联系
  1. UML与E/R

    image-20220402173029561

4-2 逻辑设计工具—关系数据库规范化理论【5.5这里】

image-20220402173643415

4-2-1 数据依赖(FD)

4-2-1-1 回顾

  1. 关系 : 描述实体及其属性、实体间的联系
    • 一张二维表,是所设计属性的笛卡尔积的一个子集
  2. 关系模式 : 用来定义关系。Sdept(Sno,Sname,Ssex)
  3. 关系数据库 : 基于关系模型的数据库,利用关系来描述现实世界 现实世界
  4. 关系数据库的模式: 定义这组关系的关系模式的全体

4-2-1-2 关系模式的形式化定义

  1. 关系模式由五部分组成 : R(U,D,DOM,F)``R(U)
    • R : 关系名
    • U: 组成该关系的属性名集合
    • D: 属性组U中属性所来自的域
    • DOM: 属性向域的映像集合
    • F : 属性间数据的依赖关系集合
  2. 完整性约束的表现形式:
    • 限定属性取值范围
    • 定义属性值间的相互关连,这就是数据依赖,数据库模式设计的关键
  3. 数据依赖 :
    • 通过一个关系中属性间值得相等与否体现出来得数据间的相互关系
    • 现实世界属性间相互联系的抽象
    • 数据内在的性质
  4. 数据依赖的主要类型 :
    • 函数依赖(functional Dependency),FD
    • 多值依赖(Multivalued Dependency),MVD
    • 连接依赖
  5. 关系模式的简化表示
    • 关系模式R(U,D,DOM,F),简化—> R(U,F)
    • 当且仅当U上的一个关系r满足F时,r称为关系,模式R(U,F)的一个关系

4-2-1-3 关系模式Student(U,F)中存在的问题

    • 数据冗杂太大 : 浪费大量的存储空间
    • 更新异常 : 数据冗杂,更新数据时,维护数据完整性代价大
    • 插入一场 : 改插的数据插不进去
    • 删除异常 : 不该删除的数据不得不删
  1. Studednt关系模式不是一个好的模式 :
    • 原因 :
  2. 规范化理论 :
    • 改造关系模式
    • 分解关系模式类似消除不合适的数据依赖
    • 解决插入异常、删除异常、更新异常和数据冗杂

4-2-1-4 函数依赖

  1. 函数依赖 : 设R(U)是一个属性集U上的关系模式,X和Y是U的子集,若对于R(U)的任意一个可能的关系r

    • r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等
    • “X函数确定Y”或“Y函数依赖于X”,记作X—>Y
      • X称为这个函数依赖的决定属性集(Determinant)
  2. 例题 :

    image-20220408103756573

4-2-1-4-1 平凡函数依赖与非平凡函数依赖
  1. 在关系模式R(U)中,对于U的子集X和Y

    • 如果X–>Y,但Y 不属于 X,则称X—>Y是非平凡的函数依赖

    • 如果X–>Y,但Y属于 X,则称X—>Y是平凡的函数依赖

      image-20220408114940711

4-2-1-4-2 完全函数依赖与部分函数依赖
  1. 在关系模式R(U )中

    image-20220408115140778

    image-20220408115454057

4-2-1-4-3 传递函数依赖
  1. 关系模式R(U)中

    image-20220408115723899

4-2-1-4-4 码
  1. K为关系模式R(U,F)中的属性或属性组合
  2. U 完全依赖于 K , 则K称为R的一个候选码(Candidate Key)
  3. 若关系模式R有多个候选码,则选定其中的一个作为主码(Primary key)
  4. 候选码能够唯一标识关系的元组,是关系模式中一组最重要的属性

4-2-2 范式(NF)

  • 第一范式(1NF)
  • BC范式(BCNF)
  • 四,五

4-2-2-1 第一范式(1NF)

  1. 如果一个关系模式R的所有属性都是不可分的基本数据项,则R属于1NF

    • 第一范式是对关系模式的最基本的要求
    • 不满足第一范式的数据库模式不能称为关系数据库
  2. 只满足第一范式的关系模式并不是一个好的关系模式

  3. image-20220408121919371

  4. image-20220408121958509

    image-20220408122020244

  5. 分解 :

    image-20220408122109061

4-2-2-2 第二范式(2NF)

  1. 弱关系模式R属于1NF,并且每一个非主属性都完全函数依赖于R的码,则R属于2NF

    image-20220408122403261

  2. 2NF关系模式SL(Sno,Sdept,Sloc)中

    • 函数依赖

    • SL的码是Sno

    • Sloc传递函依赖于Sno,即SL中存在非主属性码的传递函数依赖

      image-20220408122555396

4-2-2-3 第三范式(3NF)

4-2-2-4 BC范式

  1. BCNF : BCNF是修正的第三范式

  2. 设关系模式R∈1NF,对于R的每个人函数依赖,X----> Y ,若Y不属于

  3. BC范式与第三范式的关系 :

    • 如果关系模式R∈BCNF,必定有R∈3NF
    • 如果R∈3NF,且R只有一个候选码,则R必属于BCNF

4-2-3 关系模式的规范化

  1. 关系数据库的规范化理论是数据库逻辑设计的工具
    • 一个关系只要分量都是不可分的数据项,就是规范化的关系,只是最基本的规范化
    • 规范化程度可以有6个不同的级别,6个范式
  2. 规范化 ---->高级范式 : 解决插入异常、删除异常、修改复杂、数据冗杂
  3. 关系模式的规范化 :
    • 一个低一级范式的关系模式,通过模式分解—> 若干高一级范式的关系模式集合

4-2-3-1

  1. 步骤 :

    image-20220411144713589

第五章 数据库安全性

5-1 安全性控制的一般措施

  1. 安全性
    • 数据库的安全性是指保护数据库,防止因用户非法使用数据库造成数据泄露。更改或破坏
    • 数据保密 :
      • 用户合法访问到机密数据后能否对这些数据保密
      • 通过制定法律到的规则

image-20220411152511541

  1. 用户标识与鉴定
    • 系统提供一定的发方式让用户标识自己的身份或名字
    • 系统内部 记录着所有合法用户的标识
    • 每次用户要求进入系统时
  2. 存取控制 :
    • 存取控制机制的功能
      • 保护用户只能访问其有权存取的数据
    • 存取控制机制的组成 :
      • 定义存取权限
      • 检查存取权限
    • 用户权限定义和合法权检查机制一起组成了DBMS的安全子系统
  3. 定义视图
  4. 审计:
    • 一个专用的审计日志,系统自动将用户对数据库的所有操作记录
  5. 数据加密

5-2 DCL进行存取权限管理

5-2-1 SQL的授权功能

  1. grant语句的一般格式 :

    grant <权限>[,<权限>]...
    	[ON <对象类型><对象名>]
        TO <用户>[,<用户>]...
        [WITH grant option];
    
    
    • 功能 : 将对指定操作对象的指定操作权限授予指定的用户
  2. 操作权限 :

    image-20220411153934467

  3. 用户的权限

    • 数据库的建立表(createtab)的权限属于DBA,可由DBA授予普通用户,拥有此权限后可以建立基本表
    • 基本表或视图的属主拥有对该表或视图的一切操作权限
  4. 接收权限的用户

    • 一个或多个具体用户
    • public
  5. with grant option

    • 指定改子句后,则获得某种权限的用户可以把这种权限在授予别的 用户
    • 没有指定,则或者某种权限的用户只能使用该权限,不能传播


  1. 例题 :把查询Student表权限授给用户UI

    grant select 
    	on table Student
        to U1;
    
  2. 把对表SC的查询权限授予所有用户U4

  3. 把查询Student表和修改学生姓名的权限授给用户U4

  4. 把对表SC的INSERT权限授予U5用户,并允许

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/45437.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SFTP的基本定义、用途以及基本优势有哪些

文件传输协议允许用户通过Internet在远程系统之间传输数据。SFTP 就是这样一种协议&#xff0c;它为用户提供了一种安全的方式来发送和接收文件和文件夹&#xff0c;目前少数虚拟主机提供商会提供这项服务。本文将介绍SFTP的基本定义、用途和数据安全方面的优势。 SFTP(Secure …

[附源码]Python计算机毕业设计Django春晓学堂管理系统

项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等等。 环境需要 1.运行环境&#xff1a;最好是python3.7.7&#xff0c;…

[附源码]计算机毕业设计springboot海南琼旅旅游网

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

基于SSM的医院医疗管理系统的设计与实现

项目描述 临近学期结束&#xff0c;还是毕业设计&#xff0c;你还在做java程序网络编程&#xff0c;期末作业&#xff0c;老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等。这里根据疫情当下&#xff0c;你想解决的问…

【毕业设计】23-基于单片机的自动避障机器人设计(原理图+源代码+仿真+论文+答辩PPT)

【毕业设计】23-基于单片机的自动避障机器人设计&#xff08;原理图源代码仿真论文答辩PPT&#xff09; 文章目录【毕业设计】23-基于单片机的自动避障机器人设计&#xff08;原理图源代码仿真论文答辩PPT&#xff09;任务书设计说明书摘要设计框架架构设计说明书及设计文件源码…

mysql基础知识篇(一)

1. 什么是内连接、外连接、交叉连接、笛卡尔积呢&#xff1f; 内连接&#xff08;inner join&#xff09;&#xff1a;取得两张表中满足存在连接匹配关系的记录。 外连接&#xff08;outer join&#xff09;&#xff1a;不只取得两张表中满足存在连接匹配关系的记录&#xff0…

httplib库的安装以及使用

目录 安装httplib库 认识httplib库 httplib请求类 httplib响应类 httplib中的Server类 httplib的client类 httplib库搭建简单的服务器 httplib库搭建简单的客户端 安装httplib库 1.进入github,搜索httplib库 2.下载库 3.下载完毕将库的压缩包传输到linux系统下 4…

软件测试概念

目录 基础概念 1、软件测试的概念 2、软件测试的目的 3、基本要求 4、测试的工作流程 5、开发模型 1、瀑布模型 2、增量模型 3、快速模型 4、螺旋开发模型 5、迭代开发模型 6、敏捷开发模型 6、测试模型 1、V模型 2、W模型 7、软件测试的分类 1、测试开发的阶…

css设置渐变边框色

如上图所示&#xff0c;需设置渐变边框色&#xff0c;左右边框颜色固定&#xff0c;上边框从左到右开始渐变&#xff0c;下边框从右到左开始渐变。 思考了很久&#xff0c;如果看作是一个div&#xff0c;则需要用到 border-image属性设置渐变色。也可以看作是两个div&#xff0…

PS不能完成命令,因为没有足够内存(RAM)

PS无疑是一款非常好用的图像编辑软件&#xff0c;对于电脑小白来说操作非常困难&#xff0c;比如提示“不能完成命令&#xff0c;因为没有足够内存&#xff08;RAM&#xff09;”要怎么办呢&#xff1f;下面就来看看小编为大家提供的解决办法吧。 一、解决没有足够内存RAM的问题…

c++特殊类

目录 1.实现一个只能在堆上创建对象的类&#xff08;了解思想&#xff09; 2.实现一个只能在栈上创建对象的类&#xff08;同样思想最重要&#xff09; 3.单例模式&#xff08;有实际应用价值&#xff09; 1.实现一个只能在堆上创建对象的类&#xff08;了解思想&#xff09;…

MOAT: ALTERNATING MOBILE CONVOLUTION AND ATTENTION BRINGS STRONG VISION MODELS

MOAT: ALTERNATING MOBILE CONVOLUTION AND ATTENTION BRINGS STRONG VISION MODELS一、引言二、实现细节(一)、MBConv block(二)、Transformer block(三)、Comparing MBConv and Transformer blocks(四)、MOAT block(五)、Macro-level network design三、实验部分(一)、ImageN…

传奇GOM引擎登录器配置教程

登录器教程大分类目录引导说明 &#xff08;01&#xff09;&#xff1a; 解压配置器文件包后&#xff0c;打开KEY文件夹然后选择KEY &#xff08;02&#xff09;&#xff1a; 战盟官方提供5种不同功能KEY&#xff0c;请打开KEY文件夹里面有载图说明功能&#xff0c;选择你需要…

[附源码]Python计算机毕业设计Django打印助手平台

项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等等。 环境需要 1.运行环境&#xff1a;最好是python3.7.7&#xff0c;…

PG::SunsetDecoy

nmap -Pn -p- -T4 --min-rate1000 192.168.133.85 nmap -Pn -p 22,80 -sCV 192.168.133.85 查看80端口的页面&#xff0c;是一个压缩包 下载压缩包后尝试打开&#xff0c;需要密码&#xff0c;所以直接尝试爆破 得到解压密码 manuel 在/etc/shadow中找到了可以利用的地方 …

终于成功把家里的灯光换掉了

这个周末做过最有意义的事情莫过于把家里的客厅和餐厅的两个黄色吊灯都换上白色灯光的了。为什么说最有意义&#xff0c;因为这件事我已经拖了一年多了&#xff0c;这个黄色的灯光我就一直觉得不舒服&#xff0c;想换掉&#xff0c;可是我不会换&#xff0c;也不知道灯要买什么…

内存取证——ABC包

1、获取数据包的镜像信息 2、获取主机名字 3、 列出文件中曾使用的进程信息 题目要求我们去查看管理员的信息 使用命令查找列出有关管理员的信息继续操作(这里发现管理员注册表) 这个文件里存放着管理员的一些基本信息 已发现此的虚拟地址 打开查看 4、获取管理员用户密码

RationalDMIS 2020 轮廓度评价注意事项2021

用偏差算轮廊度值的常用方法 常见的检测设备都使用ISO和美标来评价轮廓,两者有点差异,ISO标准相对美标要更加严格。在评价轮廊度是有只管控形状和管控形状位置两种,用偏差来计算轮廊度的算法不一样。 ASMEY14.5轮廊度计算规律: (1)当最大值和最小值均三0时,轮廓度测定…

报名即将结束!11 大云原生领域开源技术干货一场拿下

距离 12 月 03 日上海站微服务x容器开源开发者 Meetup 活动正式开幕还有不到一周时间&#xff0c;线下席位即将约满。请感兴趣的同学抓紧报名哦&#xff01; 本次活动由阿里云云原生应用平台与飞天 Club 共同打造&#xff0c;整体内容聚焦容器 & 微服务方向。活动将围绕云…

位深度/像素/分辨率/图像大小的计算/帧率/刷新率

有关图像的基本名词解释&#xff1a; 位深度&#xff1a; 在记录数字图像的颜色时&#xff0c;计算机实际上是用每个像素需要的位深度来表示的。黑白二色的图像是数字图像中最简单的一种&#xff0c;它只有黑、白两种颜色&#xff0c;也就是说它的每个像素只有1位颜色&#x…