数据库以及数据库常用概念、ER模型相关概念

news2025/7/18 5:47:32

目录

1.我们为什么要学习数据库?

2.数据库的相关概念:

2.关系型数据库和非关系型数据库的区别

A.关系型数据库:

B.非关系型数据库:

C.非关系型数据库的相关类别有以下几种:

3.关系型数据库设计规则

 4.表、记录、字段

4.ER模型

A.ER图的三个重要属性:

B.ER图中关联关系有三种:

C.ER图的简单图示:



1.我们为什么要学习数据库?

数据库有什么利于我们开发的地方呢?现在我们来探究一下!!!

数据的一个重要的作用就是可以持久化得保存数据

持久化的概念如下:

 有些时候我们确实可以将一些数据存放在文件当中,但是这样子是不现实的,例如我要存储超过1亿条数据到一个excel文件当中,我是不可能可以打开这些文件的,并且要从一个文件当中查找出来一条信息,那我可能要循环遍历上千万次,这样子是不可能在实际应用当中出现的。必须要通过数据库的一些操作对其进行存储,因为数据库当中有许许多多的优化方式,可以帮助我们快速查找一些数据或者对其进行操作等。

2.数据库的相关概念:

 在当中的Mysql是一种管理软件,也就是DBMS

在上面DB,DBMS,SQL之间的关系可以用下面这张图来表示

2.关系型数据库和非关系型数据库的区别

A.关系型数据库

  • 关系型数据库是以一种二维表格的形式展示出来的
  • 关系型数据库当中表和表之间是有关系的
  • 这种形式有利于数据查询

B.非关系型数据库:

非关系型数据库实际上是一种阉割版本的关系型数据库,它舍弃了原来数据库当中的一些特点,然后可以达到一种更高性能的数据库。

C.非关系型数据库的相关类别有以下几种:

A.键值型数据库

 在这里就是相当于使用键值对的形式存储数据,达到一种非常高性能的数据库关系。

B.文档型数据库

 C.搜索引擎数据库

D.列式数据库

 E.图形数据库

3.关系型数据库设计规则

 4.表、记录、字段

4.ER模型

A.ER图的三个重要属性:

ER图分为实体、属性、关系三个核心部分。实体是长方形体现,而属性则是椭圆形,关系为菱形。

ER图的实体(entity)即数据模型中的数据对象,例如人、学生、音乐都可以作为一个数据对象,用长方体来表示,每个实体都有自己的实体成员(entity member)或者说实体对象(entity instance),例如学生实体里包括张三、李四等,实体成员(entity member)/实体实例(entity instance) 不需要出现在ER图中。

ER图的属性(attribute)即数据对象所具有的属性,例如学生具有姓名、学号、年级等属性,用椭圆形表示,属性分为唯一属性( unique attribute)和非唯一属性,唯一属性指的是唯一可用来标识该实体实例或者成员的属性,用下划线表示,一般来讲实体都至少有一个唯一属性。

ER图的关系(relationship)用来表现数据对象与数据对象之间的联系,例如学生的实体和成绩表的实体之间有一定的联系,每个学生都有自己的成绩表,这就是一种关系,关系用菱形来表示。

B.ER图中关联关系有三种:

1对1(1:1) :1对1关系是指对于实体集A与实体集B,A中的每一个实体至多与B中一个实体有关系;反之,在实体集B中的每个实体至多与实体集A中一个实体有关系。

1对多(1:N) :1对多关系是指实体集A与实体集B中至少有N(N>0)个实体有关系;并且实体集B中每一个实体至多与实体集A中一个实体有关系。

多对多(M:N) :多对多关系是指实体集A中的每一个实体与实体集B中至少有M(M>0)个实体有关系,并且实体集B中的每一个实体与实体集A中的至少N(N>0)个实体有关系。
 

C.ER图的简单图示:

 本文有参考博文(原文链接https://blog.csdn.net/belen_xue/article/details/52763629,需要更多详细知识点可以查看此博文)


 

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

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

相关文章

华为数据中心VS技术理论讲解

目录 VS之间的关系 VS的配置管理权限 VS之间、VS与外部通信 VS资源分配 VS与其它技术的联合部署 VS的创建和删除 VS(Virtual System)虚拟系统是指将一台物理设备虚拟成多个相互隔离的逻辑设备 逻辑设备之间软硬件隔离,互不影响&#xff…

立体式校验保护,让你的系统避免 90% 以上的 bug

1. 概览 在实际开发过程中,数据校验是最为重要的一环,问题数据一旦进入系统,将对系统造成不可估量的损失。轻者,查询时触发空指针异常,导致整个页面不可用;重者,业务逻辑错误,造成流…

为了买个硬盘,我专门写了篇笔记

文章目录SSD是固态硬盘的一些参数插槽接口总线类型传输协议插槽接口/总线/协议关联参考连接HDD是机械硬盘;SSD是固态硬盘。 SSD是固态硬盘的一些参数 插槽接口 外观不同而已;插槽接口不影响传输速度,但是插槽接口不适配的话是肯定插不到电脑…

力扣(LeetCode)12. 整数转罗马数字(C++)

模拟 罗马数字和掰手指数数的区别在于,IV/IXIV/IXIV/IX 这类倒着数数的,和阿拉伯数字最大的区别在于 555 的 10k10^k10k 倍 k∈Nk\isin Nk∈N ,需要被表示出来。所以除了记录 I/X/C/MI/X/C/MI/X/C/M ——1/10/100/10001/10/100/10001/10/100…

activiti-image-generator

activiti-image-generator目录概述需求:设计思路实现思路分析1.ActivitiImageException2.ProcessDiagramGenerator3.ProcessDiagramSVGGraphics2D4.ProcessDiagramDOMGroupManager5.DefaultProcessDiagramGenerator参考资料和推荐阅读Survive by day and develop by…

Smart point智能指针(part.1)

1:为什么出现智能指针   为了避免多个指针指向一个对象的时候 销毁其中一个point 其他的point就会变成空point 或者多次删除被指向对象而发生报错   或者单纯删除指针 不删除其指向的对象 当最后一个指向对象被删除的时候 对象依然存在 造成资源泄露  智能指针…

MATLAB continue语句

详细例子&#xff1a; 在MATLAB中建立一个脚本文件&#xff0c;并输入下述代码&#xff1a; a 10; %while loop execution while a < 20if a 15% skip the iteration a a 1;continue;endfprintf(value of a: %d , a);a a 1; end 运行该文件&#xff0c;显示下…

unet医学肺部ct图分割简单记录

UNet医学图像分割 说明&#xff1a; 本项目采用pytorch——gpu——cuda11.6本项目用的UNet网络架构一、硬件&#xff1a; Windows GPU 二、软件环境安装&#xff1a; pytorchNibabel 三、用法&#xff1a; 医学数据采集为kaggle的官网新冠肺炎ct图数据预处理&#xff1a;1…

青少年python系列 45.文件操作1

青少年python系列目录_老程序员115的博客-CSDN博客 青少年python教学视频ppt源码 在计算机信息时代&#xff0c;我们知道文本文件可存储的数据量多得难以置信&#xff0c;例如气象站的天气数据、交管部门的交通数据、金融商业街的社会经济数据、电子图书馆或博物馆的文学作品等…

做斗音都要经历的几个时期,你目前处于哪个阶段呢?

大家好&#xff0c;我是我赢助手&#xff0c;专注于自媒体短视频去水印、去重和文案提取运营。 今天给大家分享下做斗音的几个时期 1、兴奋期 听别人说斗音遍地是黄金开始到处学艺买资料准备大干一场。 这时是最关键的&#xff0c;能学到可以实操的项目才是最重要的&#x…

施耐德PLC TM218如何实现远程上传下载程序?

施耐德TM218支持IEC61131-3标准的六种编程语言&#xff0c;具备模块化、结构紧凑、功能全面等特点&#xff0c;在工业控制领域应用广泛&#xff0c;是市场上常见的产品之一&#xff0c;性价比较高。 因此&#xff0c;对于采购施耐德PLC的企业来说&#xff0c;通过PLC程序的上下…

【18-业务开发-基础业务-商品模块-分类管理-前后端管理系统的启动-为分类管理表增加数据-Json插件的下载-返回具有层级目录、父子关系结构的数据】

一.知识回顾 【0.三高商城系统的专题专栏都帮你整理好了&#xff0c;请点击这里&#xff01;】 【1-系统架构演进过程】 【2-微服务系统架构需求】 【3-高性能、高并发、高可用的三高商城系统项目介绍】 【4-Linux云服务器上安装Docker】 【5-Docker安装部署MySQL和Redis服务】…

内网渗透神器CobaltStrike之DNS Beacon(四)

DNS隧道简介 利用DNS隧道进行攻击的现象已存在多年&#xff0c;将数据封装在DNS协议中传输&#xff0c;大部分防火墙和入侵检测设备很少会过滤DNS流量&#xff0c;僵尸网络和入侵攻击可几乎无限制地加以利用&#xff0c;实现诸如远控、文件传输等操作 DNS隐蔽隧道建立通讯并盗…

matplotlib教程二

文章目录一. 条形图1.1 简介1.2 垂直条形图1.3 水平条形图二. 直方图2.1 简介2.2 API2.3 直方图绘制三. 饼图3.1 简介3.2 API3.3 饼图绘制四. 散点图4.1 简介4.2 API4.3 散点图绘制五. 箱形图5.1 简介5.2 API5.3 绘制箱状图六. 轮廓图6.1 简介6.2 轮廓图绘制七. 图像内的文字、…

Android Studio实现一个点餐系统

点餐系统作业要求效果登录注册欢迎页用户管理菜品种类管理菜品管理订单查询点餐源码导读手把手编写注册、用户管理板块新建实体类User新建User服务新建注册活动用户管理作业要求 功能&#xff1a; 1&#xff0e;数据管理 菜品类别&#xff1a;凉菜&#xff1b;热菜&#xff1b;…

投资组合优化的人工蜂群算法(Matlab代码实现)

&#x1f352;&#x1f352;&#x1f352;欢迎关注&#x1f308;&#x1f308;&#x1f308; &#x1f4dd;个人主页&#xff1a;我爱Matlab &#x1f44d;点赞➕评论➕收藏 养成习惯&#xff08;一键三连&#xff09;&#x1f33b;&#x1f33b;&#x1f33b; &#x1f34c;希…

力扣(LeetCode)1732. 找到最高海拔(C++)

前缀和 这道题&#xff0c;很容易看出&#xff0c;gaingaingain (海拔高度差) 是海拔高度的一个差分&#xff0c;对 gaingaingain 用前缀和&#xff0c;就能求出每个点的海拔了。题目要求我们&#xff0c;找最高海拔&#xff0c;那么只需要维护一个变量 ansansans &#xff0c…

【NLP】使用 BERT 和 PyTorch Lightning 进行多标签文本分类

&#x1f50e;大家好&#xff0c;我是Sonhhxg_柒&#xff0c;希望你看完之后&#xff0c;能对你有所帮助&#xff0c;不足请指正&#xff01;共同学习交流&#x1f50e; &#x1f4dd;个人主页&#xff0d;Sonhhxg_柒的博客_CSDN博客 &#x1f4c3; &#x1f381;欢迎各位→点赞…

【论文精读5】MVSNet系列论文详解-Point-MVSNet

Point-MVSNet全文名称&#xff1a;Point-Based Multi-View Stereo Network&#xff0c;是2019提出的使用coarse-to-fine方法来优化深度图推断过程的网络结构&#xff0c;与上一篇CVP-MVSNet都是迭代优化的思想&#xff0c;不同的是Point-MVSNet在点云上进行操作&#xff0c;而C…

基于51单片机的二氧化碳(CO2)气体浓度监测报警系统

基于51单片机的二氧化碳&#xff08;CO2&#xff09;气体浓度监测报警系统( proteus仿真程序演示视频&#xff09; 仿真图proteus 8.9 程序编译器&#xff1a;keil 4/keil 5 编程语言&#xff1a;C语言 设计编号&#xff1a;C0073 这里写目录标题基于51单片机的二氧化碳&am…