当前位置: 首页 > news >正文

数据库复习

什么是数据库系统
数据库系统是指在计算机系统中引入数据库后构成的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成
数据库系统的特点是什么?
数据结构化+数据的共享性高,冗余度低且易扩充+数据独立性高+数据由数据库管理系统统一管理和控制
可参考:https://blog.csdn.net/m0_55679446/article/details/124017443
数据库管理系统(DBMS)的主要功能是什么?
⑴数据定义:提供数据描述语言(DDL),建立或删除数据库、基本表和视图等。
⑵数据操作:提供数据操作语言(DML),对数据进行查询、更新等操作。
⑶数据库运行控制(数据库的运行管理、数据库建立和维护):提供数据控制语言(DCL),对数据库的控制主要通过四个方面实现:数据安全性控制、数据完整性控制、多用户环境下的并发控制和数据库的恢复。
数据库操纵语言和数据库控制语言?
数据操纵语言(Data Manipulation Language, DML)是用于数据库操作,对数据库其中的对象和数据运行访问工作的编程语句。
DML 的主要功能是访问数据
数据控制语言 (Data Control Language, DCL) 是一种可对数据访问权进行控制的指令,它可以控制特定用户账户对数据表、查看表、预存程序、用户自定义函数等数据库对象的控制权。
DCL 的核心指令是 GRANT、REVOKE。
什么是主键
及主关键字,指的是一个列或多列的组合,其值能唯一地标识表中的每一行
数据库的where和having区别
1.where是过滤数据行的,having是过滤数据分组的。
2.where的查询的条件是不可以用聚合函数的(比如SUM(),MAX(),AVG(),COUNT(),MIN())having是可以的。
3.where是在分组之前进行过滤的,having实在分组之后进行过滤的。
4.where是针对数据库文件过滤,having是针对查询结果过滤。
5.where是针对数据表中的字段直接过滤,having是针对已经查出的字段进行过滤。
6. where查询不可以使用字段别名,having是可以的。

三级模式结构是什么?二级映射有什么优点?
三级模式:外模式、模式、内模式
二级映像:外模式/模式、模式/内模式映像
数据库系统划分了三级模式和二级映像,对于三级模式来说,不同的模式对应不同的人员参考,可以只参与本层模式的设计,对于二级映像来说,保证了数据与程序的逻辑独立性和物理独立性
视图的概念和作用
视图是在基本表或其他视图上建立的表,它的结构和内容都来自某个基本表,是依据基本表存在而存在的。删除一个视图时,不会对基本表产生任何影响,但当删除一张基本表时,与之相关联的视图就会自动被删除。
(1)视图是经过预编译的SELECT语句,存储在数据库服务器端,因此执行视图比从客户端直接执行SELECT语句速度更快、效率更高一些。
(2)视图属于用户模式范畴,在实际中,一般的用户不一定具有SELECT语句方面的专门知识,从用户友好性角度来说,视图更便于用户使用。
(3)利用视图可以简化的形式表达复杂的SELECT语句组,如嵌套查询等(跟容易理解)
数据库怎么建立,用什么软件做,怎么和java连接
数据库并发会产生什么数据错误,提出解决方案
数据库的并发操作通常会带来以下三类问题:丢失更新问题、不一致的问题、 读“脏”数据的问题
解决的办法,可采用封锁机制,使并发操作串行化处理。
可以用并发控制的方法调度并发操作避免造成数据的不一致性使一个用户事务的执行不受其他事务的干扰
数据库的事务
数据库事务是指一个逻辑工作单元中执行的一系列操作,要么完全地执行,要么完全地不执行。
.原子性
事务是数据库的逻辑工作单位,事务中包含的各操作要么都做,要么都不做
2 .一致性
一个或多个事务执行后,原来一致的数据和数据库仍然是一致的
(就是原来和数据库数据是一致的经过相应的事务执行后,仍然是一致的)
3 .隔离性
一个事务的执行不能其它事务干扰。即一个事务内部的操作及使用的数据对其它并发事务是隔离的,并发执行的各个事务之间不能互相干扰。
4 .持续性
也称永久性,指一个事务一旦提交,它对数据库中的数据的改变就应该是永久性的。接下来的其它操作或故障不应该对其执行结果有任何影响。
等值连接和自然连接的特点
可以参考这篇文章https://blog.csdn.net/qq_40212930/article/details/88747786
自然连接是除去重复属性的等值连接
1、自然连接一定是等值连接,但等值连接不一定是自然连接。
2、等值连接要求相等的分量,不一定是公共属性;而自然连接要求相等的分量必须是公共属性。
3、等值连接不把重复的属性除去;而自然连接要把重复的属性除去。
什么是完整性约束
书上对完整性约束的概念是指保证数据的正确性、有效性和相容性的措施。其实就是对输入数据库的数据进行了约束和规范
关系模型中有三类完整性约束:实体完整性(entity integrity)、参照完整性(referential integrity)和域完整性(用户定义的完整性)
SQL语言的特点?
答:(1)SQL语言是一种一体化的语言,提供了完整的数据定义和操纵功能。
(2)SQL语言具有完备的查询功能
(3)SQL语言非常简洁,易学易用。
(4)SQL语言是一种高度非过程化的语言。
(5)SQL语言的执行方式多样,既能以交互命令方式直接调用,也能嵌入到各种高级语言中使用。
(6)SQL语言不仅能对数据表进行各种操作,也可对视图进行操作
外链接是什么?
索引的作用?优点缺点?
索引就一种特殊的查询表,数据库的搜索引擎可以利用它加速对数据的检索。它很类似与现实生活中书的目录,不需要查询整本书内容就可以找到想要的数据。索引可以是唯一的,创建索引允许指定单个列或者是多个列。缺点是它减慢了数据录入的速度,同时也增加了数据库的尺寸大小。
索引和键的区别?
索引是存储在数据库中的一个物理结构,是实际存在的,相当于一本书的目录。
键是一个逻辑概念,不是数据库的物理部分。键分为主键和外键。

  1. 主键一定是唯一性索引,唯一性索引并不一定就是主键。
  2. 一个表中可以有多个唯一性索引,但只能有一个主键。
  3. 主键列不允许空值,而唯一性索引列允许空值。
  4. 索引可以提高查询的速度。
    主键和索引都是键,不过主键是逻辑键,索引是物理键,意思就是主键不实际存在,而索引实际存在在数据库中
    存取控制是指什么?主要包括哪两个部分?有哪两类方法
    存取控制是指确保只授权给有资格的用户访问数据库,且未被授权的用户无法接近数据。
    两个部分:定义用户权限和合法权限的检查。
    两种方法:
    自主存取控制:同一用户对不同数据库有不同权限,不同用户对同一数据库的权限也不尽相同。
    强制存取控制:每个数据库对象被标以一定的密级,用户也被标以一定级别的许可证,只有具有合法许可证的用户才可以进行存取。
    视图机制是如何对数据库实现安全性控制的?
    可以对不同的用户定义不同的视图,也就是说,通过视图机制把要保密的数据对无权存取的用户隐藏起来
    数据库审计它是如何保障数据库安全性的?
    答:审计功能是把用户对数据库的一系列操作自动记录到审计日志中,审计员可以利用审计日志监控数据库中的各种行为,找出导致数据库发生异常的事件,从而阻止
    数据库的完整性是指什么?
    数据库的完整性是指数据的正确性和相容性。
    什么是触发器?触发器的作用是什么?
    触发器是一种特殊类型的存储过程,是用户对某一表中数据进行UPDATE、INSERT和DELETE操作时被触发执行的一段程序。
    触发器可以实现由主键和外键所不能保证的复杂的参照完整性和数据一致性。起主要作用体现在以下几个方面:
    (1)触发器可以对数据进行级联修改。
    (2)实现比CHECK约束更为复杂的限制。
    (3) 强制表的修改要符合业务规则。
    规范化过程中,逐级依次消除了何种函数依赖?
    由INF到2NF,消除了非主属性对主属性的部分函数依赖;
    由2NF到3NF,消除了非主属性对主属性的传递函数依赖;
    由3NF到BCNF,消除了主属性对码的部分函数依赖和传递函数依赖
    数据库设计的基本步骤是什么?在这里插入图片描述
    概念结构设计阶段
    概念结构设计阶段是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体数据库管理系统的概念模型。
    逻辑结构设计阶段
    逻辑结构设计是将概念结构转换为某个数据库管理系统所支持的数据模型,并对其进行优化。
    物理设计阶段
    物理结构设计师为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方式)。

相关文章:

数据库复习

什么是数据库系统 数据库系统是指在计算机系统中引入数据库后构成的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成 数据库系统的特点是什么? 数据结构化数据的共享性高,冗余度低且易扩充数据独立性高数…...

vscode插件推荐

文章目录前言一、vscode插件推荐?1、 Chinese (Simplified) (简体中文) Language Pack for Visual Studio Code2、Auto Close Tag3、Auto Import3、Error Lens4、vscode-icons5、ES7 React/Redux/React-Native snippets6、GitLens — Git supercharged7、JavaScript…...

THUPC2023初赛总结

今天参加了THUPC2023初赛,感觉还行。 比赛本来是11:00-16:00,但出了点问题,比赛延迟了十分钟。 刚开始,我从第一题往后看,寻找简单的题。 过了一会儿,一看排行榜,怎么最后一题全是绿的&#…...

unity知识点小结02

虚拟轴 虚拟轴就是一个数值在-11内的轴,这个数轴上重要的数值就是-1,0和1。当使用按键模拟一个完整的虚拟轴时需要用到两个按键,即将按键1设置为负轴按键,按键2设置为正轴按键。在没有按下任何按键的时候,虚拟轴的数值为0&#xf…...

总线(四)Modbus总线 协议

文章目录Modbus技术背景Modbus OSI分布Moudbus分类通讯过程Moudbus协议通信过程以及报文解析RTU 与 ASCII 收发数据区别Modbus技术背景 Modbus是一种串行通信协议。 1971年,Modicon公司首次退出Modbus协议,ModbusRTU和Modbus ASCII诞生于此。 后来施耐德…...

Cadence Allegro 导出Component Report详解

⏪《上一篇》   🏡《总目录》   ⏩《下一篇》 目录 1,概述2,Component Report作用3,Component Report示例4,Component Report导出方法4.1,方法14,2,方法2B站关注“硬小二”浏览更多演示视频 1,...

程序猿成长之路之密码学篇-DES算法详解

DES的算法实现原理详情请见 https://blog.csdn.net/qq_31236027/article/details/128209185 DES算法密钥获取详情请见 https://blog.csdn.net/qq_31236027/article/details/129224730 编码工具类获取详见 https://blog.csdn.net/qq_31236027/article/details/128579451 DES算法…...

maven生命周期、阶段与默认绑定插件梳理

maven生命周期、阶段与默认绑定插件梳理 CSDN博客 码云源码 1.maven生命周期、阶段与默认绑定插件 序号生命周期lifecycle阶段phase默认绑定插件(链接官网)默认绑定插件(链接maven库)说明1cleancleanmaven-clean-pluginmaven-clean-plugin清理2.1buildvalidate——验证2.2b…...

【数学基础】

文章目录『 第1讲 高等数学预备知识 』1.1 函数的概念与特性函数的四种特性【 重要结论 】1.2 函数的图像直角坐标系下的图像极坐标系下的图像参数方程1.3 常用基础知识【 情报#1 】『 第2讲 数列极限 』2.1 引言2.2 求数列极限【 情报#2 】『 第1讲 高等数学预备知识 』 1.1 …...

网上电子商城的设计与实现

技术:Java、JSP等摘要:21 世纪以来,人类经济高速发展,人们的生活发生了日新月异的变化,特别是计算机的应用及普及到经济和社会生活的各个领域。在消费领域,网上购物已经成为大众所接受的一种新型的消费方式…...

2023thupc总结

A 大富翁 很有意思的题 ∑x∈A∑y∈B[x支配y]−∑x∈A∑y∈B[y支配x]−∑x∈Awx\sum_{x\in A}\sum_{y\in B}[x支配y]-\sum_{x\in A}\sum_{y\in B}[y支配x]-\sum_{x\in A}w_x∑x∈A​∑y∈B​[x支配y]−∑x∈A​∑y∈B​[y支配x]−∑x∈A​wx​ ∑x∈A∑y[x支配y]−∑x∈A∑y[y支…...

【数据库】MySQL数据库基础

目录 1.数据库: 2.数据库基本操作 2.1 MySQL的运行原理 2.2显示数据库: 2.3创建数据库 2.4使用数据库 2.5删除数据库 3.常见的数据类型 3.1数值类型: 3.2字符型类型 3.3日期类型 4.表的操作 4.1创建表 4.2查看表 4.3删除表 5.汇总…...

grid了解

结构 <div class"grid"><div>1</div><div>2</div><div>3</div><div>4</div><div>5</div><div>6</div><div>7</div><div>8</div><div>9</div>&l…...

2023年全国最新工会考试精选真题及答案13

百分百题库提供工会考试试题、工会考试预测题、工会考试真题、工会证考试题库等&#xff0c;提供在线做题刷题&#xff0c;在线模拟考试&#xff0c;助你考试轻松过关。 81.女职工委员会在&#xff08;&#xff09;下开展工作。 A.企业工会委员会领导 B.企业工会委员会指导 …...

初识HTML技术

文章目录一、为什么学习前端?二、第一个HTML文件VSCode三. HTML元素四. HTML页面一、为什么学习前端? 我们作为一个后端程序员&#xff0c;为什么还要学习前端&#xff0c;因为我们的终极目的是实现web开发&#xff0c;搭建网站&#xff0c;网站 前端 后端 比如我们随便…...

我们为什么要用消息队列?

消息队列是系统设计中存在时间最长的中间件之一&#xff0c;从系统有通信需求开始&#xff0c;就产生了消息队列。 消息队列的使用场景 在日常系统设计与实现的过程中&#xff0c;下面3种场景会涉及到消息队列&#xff1a; 异步处理流量控制服务解耦 异步处理 典型的应用场…...

Linux进程控制

进程控制fork函数进程终止退出码常见的退出方式进程等待什么是进程等待&#xff0c;为什么要进程等待阻塞与非阻塞进程替换替换原理替换函数执行系统命令执行自己写的程序模拟实现简易的shellfork函数 fork函数是创建一个子进程&#xff0c;之前用过。 #include <unistd.h…...

PMP项目管理引论介绍

目录1. 指南概述和目的1.1 项目管理标准1.2 道德与专业行为规范2 基本要素2.1 项目2.2 项目管理的重要性2.3 项目、项目集、项目组合以及运营管理之间的关系2.3.1 概述2.3.2. 项目组合与项目集管理2.3.3. 运营管理2.3.4. 组织级项目管理和战略2.3.5. 项目管理2.3.6. 运营管理与…...

计算机视觉废钢堆提取问题

计算机视觉废钢堆提取问题 背景介绍 在钢铁炼制中&#xff0c;废钢是非常重要的原料&#xff0c;不同等级废钢对于钢成品影响很大&#xff0c;因此需要对废钢进行正确分类。某废钢料场中&#xff0c;卸料区域布置了多个摄像头&#xff0c;用于拍摄卸料场中废钢堆&#xff0c;…...

判断水仙花数-课后程序(Python程序开发案例教程-黑马程序员编著-第二章-课后作业)

实例5&#xff1a;判断水仙花数 水仙花数是一个3位数&#xff0c;它的每位数字的3次幂之和等于它本身&#xff0c;例如13 53 33 153&#xff0c;153就是一个水仙花数。 本实例要求编写程序&#xff0c;实现判断用户输入的3位数是否为水仙花数的功能。 实例目标 掌握Pytho…...

HTML 语义化

目录 HTML 语义化HTML5 新特性HTML 语义化的好处语义化标签的使用场景最佳实践 HTML 语义化 HTML5 新特性 标准答案&#xff1a; 语义化标签&#xff1a; <header>&#xff1a;页头<nav>&#xff1a;导航<main>&#xff1a;主要内容<article>&#x…...

Flask RESTful 示例

目录 1. 环境准备2. 安装依赖3. 修改main.py4. 运行应用5. API使用示例获取所有任务获取单个任务创建新任务更新任务删除任务 中文乱码问题&#xff1a; 下面创建一个简单的Flask RESTful API示例。首先&#xff0c;我们需要创建环境&#xff0c;安装必要的依赖&#xff0c;然后…...

C++初阶-list的底层

目录 1.std::list实现的所有代码 2.list的简单介绍 2.1实现list的类 2.2_list_iterator的实现 2.2.1_list_iterator实现的原因和好处 2.2.2_list_iterator实现 2.3_list_node的实现 2.3.1. 避免递归的模板依赖 2.3.2. 内存布局一致性 2.3.3. 类型安全的替代方案 2.3.…...

Leetcode 3576. Transform Array to All Equal Elements

Leetcode 3576. Transform Array to All Equal Elements 1. 解题思路2. 代码实现 题目链接&#xff1a;3576. Transform Array to All Equal Elements 1. 解题思路 这一题思路上就是分别考察一下是否能将其转化为全1或者全-1数组即可。 至于每一种情况是否可以达到&#xf…...

工业安全零事故的智能守护者:一体化AI智能安防平台

前言&#xff1a; 通过AI视觉技术&#xff0c;为船厂提供全面的安全监控解决方案&#xff0c;涵盖交通违规检测、起重机轨道安全、非法入侵检测、盗窃防范、安全规范执行监控等多个方面&#xff0c;能够实现对应负责人反馈机制&#xff0c;并最终实现数据的统计报表。提升船厂…...

3.3.1_1 检错编码(奇偶校验码)

从这节课开始&#xff0c;我们会探讨数据链路层的差错控制功能&#xff0c;差错控制功能的主要目标是要发现并且解决一个帧内部的位错误&#xff0c;我们需要使用特殊的编码技术去发现帧内部的位错误&#xff0c;当我们发现位错误之后&#xff0c;通常来说有两种解决方案。第一…...

pam_env.so模块配置解析

在PAM&#xff08;Pluggable Authentication Modules&#xff09;配置中&#xff0c; /etc/pam.d/su 文件相关配置含义如下&#xff1a; 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块&#xff0c;负责验证用户身份&am…...

《通信之道——从微积分到 5G》读书总结

第1章 绪 论 1.1 这是一本什么样的书 通信技术&#xff0c;说到底就是数学。 那些最基础、最本质的部分。 1.2 什么是通信 通信 发送方 接收方 承载信息的信号 解调出其中承载的信息 信息在发送方那里被加工成信号&#xff08;调制&#xff09; 把信息从信号中抽取出来&am…...

GitHub 趋势日报 (2025年06月08日)

&#x1f4ca; 由 TrendForge 系统生成 | &#x1f310; https://trendforge.devlive.org/ &#x1f310; 本日报中的项目描述已自动翻译为中文 &#x1f4c8; 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...

c#开发AI模型对话

AI模型 前面已经介绍了一般AI模型本地部署&#xff0c;直接调用现成的模型数据。这里主要讲述讲接口集成到我们自己的程序中使用方式。 微软提供了ML.NET来开发和使用AI模型&#xff0c;但是目前国内可能使用不多&#xff0c;至少实践例子很少看见。开发训练模型就不介绍了&am…...