对关系型数据库管理系统的介绍

1.数据库的相关介绍

关系型数据库管理系统:(英文简称:RDBMS)

为我们提供了一种存储数据的特定格式,所谓的数据格式就是表,

在数据库中一张表就称为是一种关系.

在关系型数据库中表由两部分组成:第一部分是字段(column)第二部分叫做记录(record)

在表中的每一类数据就是一种字段,在表中每一个数据录入就是一条记录。

在关系型数据库中表是不能单独存在的,想创建表就要先有数据库的存在, 

在RDBMS中存储数据的结构是在数据库中去创建表在表中有字段(column)和记录(record)组成。

在RDBMS中的数据库的表中可以设置一些限制条件,这些限制条件的加入使得用户录入数据的统一规范。

2.对RDBMS中数据库中表的限制条件的介绍:

约束  constraint

1.域约束:在字段上进行数据类型的限制。(为了确保在表中每一列的数据格式的统一。)

2.检查性约束:在字段上进行一个数据的判断,满足条件则录入数据,形成一条记录,如果不满足条件则返回错误。(确保数据的合理性。)

3.主键约束(primary  key):数据第一不能重复,第二填入数据的时候这一列不能为空,通常为编号的字段,设置主键约束。

注意:一张表只能有一个主键约束。(通常为编号的字段设置主键约束。)

4.惟一键约束(unique key):数据不能重复,但是数据可以为空。

一张表中可以存在多个惟一键。

(典型的IP地址不可能出现重复,)

5.外键约束(Foreign  key):也就是说外键约束是多张表之间的一种联系,如果录入数据的编号在对应的表中找不到对应的编号则整行信息作废,不能录入表中。(确保数据的完整性准确性,但是录入数据的速度会降低。)

子表与母表应该通过唯一性数据进行联系,必须保证联系子表与母表之间的数据编号是不重复的。

  1. 维护数据完整性:外键约束确保了引用完整性(Referential Integrity),即两个相关联的表之间的数据一致性。当在一个表(从表或子表)中插入或更新记录时,外键约束会检查这些操作是否与另一个表(主表或父表)中的相关记录相匹配。例如,如果子表中的外键列必须引用主表中已存在的主键值,那么外键约束会阻止插入或更新一个不存在于主表中的外键值,从而避免了孤立数据和无效引用。

在RDBMS中如何避免数据的冗余?

在RDBMS中为了避免重复的重要手段之一就是把表拆掉,将一张表拆成两张表。

在数据库中最重要的就是对字段的设计,而每一张表都需要进行域约束

在数据库中最难的主要就是字段的设计。在数据库中每一张表都要去设置域约束。

数据的冗余

数据冗余(Data Redundancy)是指在数据库或数据存储系统中存储了超过一次的相同数据或可以由其他数据推导出来的数据。

3.事务

事务():Transaction

启动事务:准备做一项工作

回滚事务:如果经过检查,发现操作错误。则回滚事务,重新操作。

当启动事务后,经过检查之后发现操作无误,则提交事务,操作生效。

 作用:确保多个操作要么全成功,要么全失败。

4.关系型数据库管理系统的软件

Oracle  商业软件

MySQL  早期是开源软件

mariadb-server 开源软件(除了名字跟MySQL不一样,其他都差不多。)

SQL Server (微软的收费软件,互联网人不用。)

postgresql  

华为  GaussDB

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【NodeMCU实时天气时钟温湿度项目 7】和风天气API返回JSON数据信息的解压缩实现——ArduinoUZlib功能库

今天是第七专题,主要内容是:导入ArduinoUZlib功能库,借助该库把从【和风天气】官网返回的经过Gzip压缩的JSON数据,进行解压缩和t解析,在串口监视器上输出解析后的JSON信息。 如您需要了解其它专题的内容,请…

物联网应用开发--STM32与新大陆云平台通信(云平台控制开发板上蜂鸣器、LED)

实现目标 1、掌握云平台执行器的创建 2、熟悉STM32 与ESP8266模块之间的通信 3、具体实现目标:(1)创建5个执行器:蜂鸣器,LED1,LED2,ED3,LED4;(2)执行器能对…

CodeGeeX 智能编程助手 6 项功能升级,在Visual Studio插件市场霸榜2周!

CodeGeeX是支持适配Visual Studio 2019的唯一一款国产智能辅助编程工具,已经在Visual Studio趋势上霸榜2周! CodeGeeX v1.0.4版本上线Visual Studio插件市场,带来了多项新功能和性能优化,提升编程体验。 新功能亮点速览&#xf…

用面向对象的思想编写实时嵌入式C程序

实时嵌入式系统的软件一般由C语言编写,程序结构基本上都是这样的: // 主程序 int main(void) {init(); // 初始化while(1){tick(); // 业务逻辑}return 0; }// 计时器 static unsigned int g_timer_tick_cnt 0; // 时钟中断回调 void isr_time…

Docker 基础认识

文章目录 概念铺垫(1)概念铺垫(2)概念铺垫 (3)概念铺垫(4)Docker 定义Docker 特点Docker 架构 概念铺垫(1) 虚拟化相关概念 物理机:实际的服务器…

【前端】CSS基础(2)

文章目录 前言1、CSS选择器1.1选择器的功能1.2 选择器的种类1.2.1 基础选择器1.2.1.1 标签选择器1.2.1.2 类选择器1.2.1.3 id选择器1.2.1.4 通配符选择器1.2.1.5 伪类选择器 1.2.2 复合选择器1.2.2.1 后代选择器1.2.2.2 子选择器1.2.2.3 并集选择器 前言 这篇博客仅仅是对CSS的…

vue3自定义指令​(通过指令钩子获得dom和钩子参数)

实现文本框自动获得焦点 Index.vue: <script setup> import { ref, onMounted } from vue import ./index.cssconst vFocus {mounted: (el, binding) > {el.focus()console.log(binding)} }onMounted(() > {}) </script><template><div class&qu…

JSPfilters过滤技术

1.创建动态web项目 2.创建filters的文件 3.创建主页面 4.配置xml项目 总结构 主页面代码 <% page language"java" contentType"text/html; charsetUTF-8"pageEncoding"UTF-8"%><!DOCTYPE html><html><head><meta cha…

C++学习第二十九课:C++ 输入输出流详解:从基础到高级应用

在 C 中&#xff0c;流&#xff08;stream&#xff09;是一种用于实现输入输出操作的抽象概念。流可以看作是字节的流动&#xff0c;这些字节可以从一个地方流向另一个地方&#xff0c;例如从键盘输入到程序中&#xff0c;或者从程序输出到屏幕。C 提供了一套完整的流库来处理各…

灵卡科技HDMI音视频采集及H.264编码一体化采集卡—LCC260

推荐一款由灵卡科技倾力打造的高品质HDMI音视频采集卡——LCC260。以创新的技术&#xff0c;精湛的工艺和卓越的性能&#xff0c;为您提供全方位的音视频解决方案。 LCC260是一款集HDMI音视频采集与H.264编码于一身的全功能采集卡。它的输入端配备了最先进的HDMI 1.4a标准接口&…

扩散模型diffusion model

一 什么是扩散模型 1.1 现有生成模型 已经有大量的方法证明深度生成模型能够模拟人类的想象思维&#xff0c;生成人类难以分辨真伪的内容&#xff0c;主要方法如下&#xff1a; 1、GAN&#xff1a;用神经网络训练生成器和判别器 GAN 的主要思想&#xff1a; GAN 就是一个互搏的…

ChatGPT-4o发布了,所有人都可以免费用

前言 美国时间 5 月 13 日&#xff0c;在 Sam Altman 缺席的情况下&#xff08;为什么缺席&#xff0c;猜测是可能后面还有更重磅的消息&#xff0c;这次的产品只是一个中间过渡产品&#xff09;&#xff0c;OpenAI CTO Mira Murati 介绍了新的 ChatGPT 产品 ChatGPT-4o。这个…

go语言基础1

1.token token是构成源程序的基本不可在分割单元。编译器编译源程序的第一步就是将源程序分割为一个个独立的token&#xff0c;这个过程就是词法分析。Go语言的token可以分为关键字、标识符、操作符、分隔符和字面常量等&#xff0c;如图所示&#xff1a; Go token分隔符有两类…

Vscode编辑器 js 输入log自动补全

最近换了新电脑&#xff0c;新下载了Vscode&#xff0c;记录一下设置项。 Vscode 版本 想要的效果 js文件中输入log&#xff08;点击tab键&#xff09;&#xff0c;自动补全为 console.log() Vscode 文件》首选项》设置 搜索&#xff1a;snippets Emmet: Show Suggestions…

计算机毕业设计源码 | 基于SpringBoot的线上教学系统 答疑辅导网站(附源码)

1&#xff0c;项目介绍 1.1 项目背景 网络问答平台经历了多年的发展&#xff0c;目前处于一个日益成熟的状态。最早的网络问答平台是知乎&#xff0c;知乎的创立者认为有许多信息在互联网上没有被记录和共享&#xff0c;于是他们决定创造一个平台&#xff0c;能够让更多人可以…

【强训笔记】day22

NO.1 思路&#xff1a;将情况全部枚举出来。 代码实现&#xff1a; #include <iostream> #include<string> using namespace std;string a,b; int main() {cin>>a>>b;int ma.size(),nb.size();int retm;for(int i0;i<n-m;i){int tmp0;for(int j…

软文撰写注意事项有哪些?

软文&#xff0c;作为一种隐性的广告形式&#xff0c;越来越受到企业的青睐。一篇高质量的软文&#xff0c;不仅能吸引读者的眼球&#xff0c;还能在潜移默化中传递品牌价值。撰写一篇高质量的软文&#xff0c;并非一蹴而就。从开头到发布&#xff0c;每一个环节都需要精心打磨…

Charger之二输入电压动态电源原理(VIN-DPM)

主要内容 Charger的VIN-DPM 前篇内容&#xff1a;电池管理IC&#xff08;Charger&#xff09;了解一下&#xff1f; 领资料&#xff1a;点下方↓名片关注回复&#xff1a;粉丝群 正文 一、 VIN-DPM概念 VIN-DPM是指输入电压动态电源管理&#xff08;Input voltage dynamic…

C++ QT设计模式 (第二版)

第3章 Qt简介 3.2 Qt核心模块 Qt是一个大库&#xff0c;由数个较小的库或者模块组成&#xff0c;最为常见的如下&#xff1a;core、gui、xml、sql、phonon、webkit&#xff0c;除了core和gui&#xff0c;这些模块都需要在qmake的工程文件中启用 QTextStream 流&#xff0c;Qdat…

表现孤独的短视频:成都鼎茂宏升文化传媒公司

表现孤独的短视频&#xff1a;孤独之美与心灵的对话 在短视频的浪潮中&#xff0c;有一种特殊的情感表达形式逐渐崭露头角——那就是表现孤独的短视频。这些视频以其独特的视角和深刻的情感内涵&#xff0c;引发了广大观众的共鸣。表现孤独的短视频&#xff1a;成都鼎茂宏升文…