数据库复习
什么是数据库系统
数据库系统是指在计算机系统中引入数据库后构成的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成
数据库系统的特点是什么?
数据结构化+数据的共享性高,冗余度低且易扩充+数据独立性高+数据由数据库管理系统统一管理和控制
可参考: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语言不仅能对数据表进行各种操作,也可对视图进行操作
外链接是什么?
索引的作用?优点缺点?
索引就一种特殊的查询表,数据库的搜索引擎可以利用它加速对数据的检索。它很类似与现实生活中书的目录,不需要查询整本书内容就可以找到想要的数据。索引可以是唯一的,创建索引允许指定单个列或者是多个列。缺点是它减慢了数据录入的速度,同时也增加了数据库的尺寸大小。
索引和键的区别?
索引是存储在数据库中的一个物理结构,是实际存在的,相当于一本书的目录。
键是一个逻辑概念,不是数据库的物理部分。键分为主键和外键。
- 主键一定是唯一性索引,唯一性索引并不一定就是主键。
- 一个表中可以有多个唯一性索引,但只能有一个主键。
- 主键列不允许空值,而唯一性索引列允许空值。
- 索引可以提高查询的速度。
主键和索引都是键,不过主键是逻辑键,索引是物理键,意思就是主键不实际存在,而索引实际存在在数据库中
存取控制是指什么?主要包括哪两个部分?有哪两类方法
存取控制是指确保只授权给有资格的用户访问数据库,且未被授权的用户无法接近数据。
两个部分:定义用户权限和合法权限的检查。
两种方法:
自主存取控制:同一用户对不同数据库有不同权限,不同用户对同一数据库的权限也不尽相同。
强制存取控制:每个数据库对象被标以一定的密级,用户也被标以一定级别的许可证,只有具有合法许可证的用户才可以进行存取。
视图机制是如何对数据库实现安全性控制的?
可以对不同的用户定义不同的视图,也就是说,通过视图机制把要保密的数据对无权存取的用户隐藏起来
数据库审计它是如何保障数据库安全性的?
答:审计功能是把用户对数据库的一系列操作自动记录到审计日志中,审计员可以利用审计日志监控数据库中的各种行为,找出导致数据库发生异常的事件,从而阻止
数据库的完整性是指什么?
数据库的完整性是指数据的正确性和相容性。
什么是触发器?触发器的作用是什么?
触发器是一种特殊类型的存储过程,是用户对某一表中数据进行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…...
总线(四)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∈Awx ∑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
百分百题库提供工会考试试题、工会考试预测题、工会考试真题、工会证考试题库等,提供在线做题刷题,在线模拟考试,助你考试轻松过关。 81.女职工委员会在()下开展工作。 A.企业工会委员会领导 B.企业工会委员会指导 …...
初识HTML技术
文章目录一、为什么学习前端?二、第一个HTML文件VSCode三. HTML元素四. HTML页面一、为什么学习前端? 我们作为一个后端程序员,为什么还要学习前端,因为我们的终极目的是实现web开发,搭建网站,网站 前端 后端 比如我们随便…...
我们为什么要用消息队列?
消息队列是系统设计中存在时间最长的中间件之一,从系统有通信需求开始,就产生了消息队列。 消息队列的使用场景 在日常系统设计与实现的过程中,下面3种场景会涉及到消息队列: 异步处理流量控制服务解耦 异步处理 典型的应用场…...
Linux进程控制
进程控制fork函数进程终止退出码常见的退出方式进程等待什么是进程等待,为什么要进程等待阻塞与非阻塞进程替换替换原理替换函数执行系统命令执行自己写的程序模拟实现简易的shellfork函数 fork函数是创建一个子进程,之前用过。 #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. 运营管理与…...
计算机视觉废钢堆提取问题
计算机视觉废钢堆提取问题 背景介绍 在钢铁炼制中,废钢是非常重要的原料,不同等级废钢对于钢成品影响很大,因此需要对废钢进行正确分类。某废钢料场中,卸料区域布置了多个摄像头,用于拍摄卸料场中废钢堆,…...
判断水仙花数-课后程序(Python程序开发案例教程-黑马程序员编著-第二章-课后作业)
实例5:判断水仙花数 水仙花数是一个3位数,它的每位数字的3次幂之和等于它本身,例如13 53 33 153,153就是一个水仙花数。 本实例要求编写程序,实现判断用户输入的3位数是否为水仙花数的功能。 实例目标 掌握Pytho…...
OpenClaw低配部署:gemma-3-12b-it在4GB内存设备上的运行方案
OpenClaw低配部署:gemma-3-12b-it在4GB内存设备上的运行方案 1. 为什么要在低配设备上部署OpenClaw? 去年我入手了一台二手Mac mini(8GB内存版),本想用它作为家庭媒体中心,后来突发奇想:能不能…...
AI头像生成器效果展示:支持‘敦煌飞天纹样+半透明纱衣+暖光侧逆光’复杂提示
AI头像生成器效果展示:支持敦煌飞天纹样半透明纱衣暖光侧逆光复杂提示 当传统艺术遇见AI技术,会碰撞出怎样的视觉奇迹? 1. 惊艳开场:从想象到现实的艺术跨越 你有没有遇到过这样的困扰:心中有一个绝美的头像创意&…...
OpenClaw+SecGPT-14B:构建无需编程的内网资产管理系统
OpenClawSecGPT-14B:构建无需编程的内网资产管理系统 1. 为什么需要无代码内网资产管理 去年接手公司IT运维时,我发现内网设备清单还是三年前的Excel表格。每当新设备接入或旧设备淘汰,手动更新文档总会被遗忘。更麻烦的是,不同…...
PHP中HTML标签过滤的5种有效方法
什么是XSS攻击? XSS(Cross-Site Scripting)攻击是指攻击者在网页中插入恶意脚本,当其他用户浏览该页面时,恶意脚本会被执行,从而盗取用户信息、会话令牌或进行其他恶意操作。 方法一:htmlspeci…...
C++编程中堆与栈内存的差异解析
C编程中堆与栈内存的差异解析 在C编程的世界里,内存管理是一个核心且至关重要的概念。其中,堆(Heap)与栈(Stack)作为两种主要的内存分配区域,各自扮演着不同的角色,理解它们之间的区…...
工具使用指南:提升效率的关键方法与实践
在信息爆炸的今天,我们接触到的数字工具数量呈指数级增长。从文档处理到图像编辑,从项目管理到团队协作,各类工具层出不穷。然而,一个普遍现象是:许多人工具越装越多,效率却并未显著提升。问题的根源往往不…...
MeterSphere接口测试实战:从单接口到自动化场景的完整构建
1. 初识MeterSphere:接口测试新手的第一个任务 刚接手接口测试任务时,我和大多数新人一样既兴奋又忐忑。记得第一次打开MeterSphere这个开源持续测试平台,满屏的专业术语让我有点发懵。但实际用下来发现,它的界面设计比Postman这类…...
idea低版本用高版本的jdk
第二步:把 Project 也改成 JDK17 File → Project Structure (CtrlAltShiftS) Project SDK → 选 17 Language level → 选 17 左边点 Modules每一个模块的 Language level 都改成 17二、分步修复(按顺序执行,100% 解决) 修复 Mav…...
企业 Agent 流程上线后,如何实现持续优化与迭代?——2026年企业级智能体长效运营全景指南
进入2026年,企业级智能体(Enterprise AI Agent)已从早期的“实验性POC”全面转向“大规模生产部署”。然而,行业调研显示,超过60%的Agent流程在上线初期表现惊艳,却在运行3-6个月后因业务环境变化、知识库过…...
C语言断言函数:原理、应用与最佳实践
1. C语言断言函数的基础概念断言(assert)是C语言中一个非常实用的调试工具,它本质上是一个宏而非函数。断言的核心思想是对程序中的假设条件进行检查,当条件不满足时立即终止程序运行并输出错误信息。在标准C库中,断言…...
