SQL编程语言

第一章 

1.  数据库是长期储存在计算机内,由专门的数据管理软件(数据库管理系统),进行统一组织和管理控制的大量数据的集合

2.数据库的基本特点不包括可以快速检索

3. 数据管理技术的发展经历了:人工管理阶段、文件系统阶段、数据库系统阶段。

4. 数据库系统数据库数据库管理系统数据库管理员应用程序组成。

5. 数据库系统三级模式是指:数据库是由内模式、模式、外模式三级构成。

6. 单个用户使用数据称为外模式,所有用户使用数据称为模式,数据的物理储存称为内模式

7. 数据独立性是指应用程序与数据库结构之间相互独立,包括物理独立性和逻辑独立性。

8. 物理独立性修改内模式,模式不变逻辑独立性修改模式,外模式不变

9. 数据库管理系统的目标是简单、高效、安全共享数据

10. 数据库管理系统包括:查询处理、存储管理、保护管理三大功能模块。

11. 数据模型数据模式实例有所不同,前者是一种抽象概念(核心和基础),中间的是一种具体的数据库的列名集合,后者是指数据库表格中的元素集合。

12. 数据模型三要素数据结构(静态)、数据操纵(动态)、完整性约束

13. 一般用E-R模型来描述现实世界的概念模型

14. 两个实体之间的联系可以分为三种:一对一联系一对多联系多对多联系

15. 层次模型树状结构,只有一个父节点;网状模型图结构,对父节点个数没有约束;关系模型二维表格

16. 从逻辑模型物理模型的转换一般是由DBMS完成的。

第二章 

1. 二维表结构被称为关系模型,关系模型的称为属性,属性都是不可再分的称为元组,属性和元组的次序都是无关紧要的。

2. 主码能唯一标识元组的属性或属性组合,一个表格中的外码需要与另一个表格中的属性相匹配。

3. 代数关系操作:并、交、差、笛卡尔积

4. 抽象关系操作:选择、投影、自然连接、条件连接、更名、除

5. 自然连接分为三步:先求两个表的笛卡尔积,然后选择两个属性值相同的那一行构成新表,最后删除重复列。

6. 条件连接分为两步:先求两个表的笛卡尔积,然后选择满足条件的行、列构成新表。

7. 完整性分为实体完整性、参照完整性、用户定义完整性三种。

8. 实体完整性要求主码不能取空值且唯一;参照完整性要求外码要么取对应主码值,要么取空值用户定义完整性要求实例满足语义

9. 关系操作中,操作的对象和结果都是集合

第三章 

1. SQL是一门结构化查询语言,其功能包括数据定义(DDL)数据操纵(DML)数据控制(DCL),且SQL不区分大小写

2. 实现创建(create)、修改(alter)、删除(drop)等操作的数据库语言属于数据定义(DDL)

3. SQL语言创建表时,列如果是主码则需要在后面加上primary key列如果是外码则需要在后面加上reference

4. select语句的运算符有:代数运算符(not)in(not)between and、is (not)null、(not)exists(只要有就执行)、(not)like、not、and、or

5. select语句select的后面还可以使用各种函数,有count()、avg()、sum()、max()、min()

6. select语句order by用于对数据排序升序asc或者省略降序desc

7. select语句笛卡尔积直接用逗号表示。

8. 自然连接用SQL语句可以写成:tname1 nature jion tname2

9. 对于复杂的查询语句,还可以使用嵌套查询

10. 进行子查询时,some只要有一个符合则为真,all只要有一个不符合则为假。

11. select语句还可以使用并(union)交(intersect)(except)

12. 完成数据控制功能的动词有:grantrevoke

13. SQL语言可以修改数据可以使用insert、update、delete

14. 空值不能和任何值作比较,也不能等于其他值。

15. SQL语言中,delete通常用于删除元组insert能往视图中插入新数据

16. 在视图上不能定义新的基本表

17. not in等价于<>all,表示全部都不等于

数据创建语句create table tname
{
col1 数据类型 primary key,
col2 数据类型,
col3 数据类型
}
creat table tname3
{
col1 数据类型 references tname1(col1),
col2 数据类型 references tname2(col2),
col3 数据类型 
}
数据更新语句创建一个新表
create table tname
删除一个旧表
drop table tname 
更换一个旧表的表名
alter table oldname rename to newname
修改一个旧表(对列操作)
alter table tname[add column <newcol><数据类型>][rename column <oldcol> to <newcol>][alter column <col> type <数据类型>][drop column <col>]
数据查询语句select col from tname where ...(条件1)
order by ...(排序)

第四章

1. 数据库安全性控制的防范对象是非法用户的非法操作

2. 提高数据库的安全性的方法有:用户标识与鉴别存取控制视图机制审计数据加密等。

3. 自主存取控制通过SQL语言的grant(授权)和revoke(收回)语句实现,强制存取控制允许等级相同时,主体对客体进行读取、写入操作。

第五章

1. 数据完整性的防范对象是:不符合语义的数据不正确的数据

2. 实体完整性要求主码不能取空值且唯一;参照完整性要求外码要么取对应主码值,要么取空值用户定义完整性要求实例满足语义

第六章 

1. 如果属性集M中,每个属性值确定,则属性集N的每个属性集也随之确定,称N依赖于M

2. 如果M的任何一个真子集都确定不了N(M缺一不可),则称N对M完全函数依赖;反之(M存在多余),则称N对M部分函数依赖。(左边真子集决定右边则为部份依赖,全集决定则为完全依赖)

3. 函数依赖一定是对应关系而不一定是包含关系,如果是包含关系,则称平凡的函数依赖;如果只是对应关系,则称非平凡的函数依赖

4. 传递函数依赖只需使用:自反律、增广律、传递率进行推导。

5. 属性集M中,能推导出整个属性集M的最小属性集合称为候选键,也称为主属性

6. 2NF:不存在非主属性对候选键的部分依赖关系。

7. 3NF:不存在非主属性对候选键的部分依赖和传递依赖关系。

8. BCNF模式:满足3NF,且左部都包含候选键。

9. 规范化理论是为解决关系数据库中数据冗余、更新异常和数据不一致问题而引入的。

第七章 

 

第八章 

1. DBMS的基本逻辑工作单元是事务DBMS实现并发控制和恢复的基本单位也是事务

2. SQL中,用begin transaction开始事务,用commit提交事务,用rollback回滚事务。

3. 事务具有ACID特性:原子性(要么全部都做,要么全部都不做)(恢复模块)一致性(要求正确操作)(完整性模块)隔离性(一起控制)(并发控制模块)持久性(提交后永久更新)(恢复模块)

4. 数据库运行过程中容易发生:事务故障(范围仅限于特定的事务)(死锁或者溢出)系统故障(范围限于事务)介质故障(外层物理结构)

5. 数据库备份主要用于恢复介质故障

6. 数据库需要先写日志,后实施更新

7. 后援副本的作用是故障后的修复

8. 恢复数据最常用的技术是增量备份和日常事务备份

9. 数据库恢复用到的数据来源日志文件、数据库后援副本

第九章

1. 由于前面的读写操作覆盖掉后面的读写操作而引起的错误,称为写丢失。

2. 出现读取之前的数据的情况称为读脏数据。

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

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

相关文章

LeetCode:165. 比较版本号(双指针 Java)

目录 165. 比较版本号 题目描述&#xff1a; 实现代码与解析&#xff1a; 双指针 原理思路&#xff1a; 165. 比较版本号 题目描述&#xff1a; 给你两个 版本号字符串 version1 和 version2 &#xff0c;请你比较它们。版本号由被点 . 分开的修订号组成。修订号的值 是它…

【Spring】Mybatis缓存+ehcache

文章目录 基础缓存基于Spring的Mybatis缓存ehcacheCacheableCachePutCacheEvictCaching 基础缓存 一级缓存 SqlSession 级别的缓存&#xff0c;它是默认开启的。每当执行一个查询操作时&#xff0c;MyBatis 会首先从一级缓存中查找结果&#xff0c;如果找到了相应的数据&…

【STM32+QT项目】基于STM32与QT的智慧粮仓环境监测与管理系统设计(完整工程资料源码)

视频演示: 基于STM32与QT的智慧粮仓环境监测与管理系统设计 目录: 目录 视频演示: 目录: 前言:

Backend - C# 操作数据库 DB(ADO.NET、LINQ to SQL、EF)

目录 一、ADO.NET&#xff08;传统&#xff09; 二、LINQ to SQL&#xff08;已过时&#xff09; 三、EF&#xff08;推荐&#xff09; 常见的操作数据库的方法&#xff1a;有三种&#xff0c;分别是 ADO.NET、LINQ to SQL、EF 一、ADO.NET&#xff08;传统&#xff09; ADO.NE…

机器学习周报-ModernTCN文献阅读

文章目录 摘要Abstract 0 提升有效感受野&#xff08;ERF&#xff09;1 相关知识1.1 标准卷积1.2 深度分离卷积&#xff08;Depthwise Convolution&#xff0c;DWConv&#xff09;1.3 逐点卷积&#xff08;Pointwise Convolution&#xff0c;PWConv&#xff09;1.4 组卷积(Grou…

《OpenCV计算机视觉实战项目》——银行卡号识别

文章目录 项目任务及要求项目实现思路项目实现及代码导入模块设置参数对模版图像中数字的定位处理银行卡的图像处理读取输入图像&#xff0c;预处理找到数字边框使用模版匹配&#xff0c;计算匹配得分 画出并打印结果 项目任务及要求 任务书&#xff1a; 要为某家银行设计一套…

Yolo11改进:注意力改进|Block改进|ESSAformer,用于高光谱图像超分辨率的高效Transformer|即插即用

摘要 一、论文介绍 高光谱图像超分辨率的重要性:高光谱成像技术通过密集采样光谱特征,为材料区分提供丰富的光谱和空间结构信息,广泛应用于各领域。高光谱图像超分辨率(HSI-SR)旨在从低分辨率HSI生成高分辨率HSI。传统方法的局限性:传统方法依赖手工制作的先验,如低秩近…

概要性了解Linux的总线设备驱动

引言 假如我们的板子上有很多LED&#xff0c;有时候需要操作这个LED&#xff0c;有时候需要操作另一个LED&#xff0c;我们希望代码可以清晰地组织在一起&#xff0c;方便扩展&#xff0c;同时自动为这些具体的设备生成对应的设备文件以供用户空间使用。 在Linux中&#xff0…

Swift语言的正则表达式

Swift语言的正则表达式 正则表达式是一种用于匹配字符串的强大工具&#xff0c;它可以帮助开发者在文本处理中高效地搜索和操作字符串。在Swift语言中&#xff0c;正则表达式的支持是通过Foundation框架提供的。本文将全面介绍Swift中的正则表达式&#xff0c;从基础知识到进阶…

【LeetCode: 560. 和为 K 的子数组 + 前缀和 + 哈希表】

&#x1f680; 算法题 &#x1f680; &#x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 &#x1f340; &#x1f332; 越难的东西,越要努力坚持&#xff0c;因为它具有很高的价值&#xff0c;算法就是这样✨ &#x1f332; 作者简介&#xff1a;硕风和炜&#xff0c;…

Tableau数据可视化与仪表盘搭建-可视化原则及BI仪表盘搭建

目录 可视化原则 BI仪表盘搭建 仪表盘搭建原则 明确仪表盘主题 仪表盘主题拆解 开发设计工作表 经营情况总览&#xff1a;突出显示的文字 经营数据详情&#xff1a;表格 每日营收数据&#xff1a;多轴折线图 每日流量数据&#xff1a;双轴组合图 新老客占比&#xf…

vue2日历组件

这个代码可以直接运行&#xff0c;未防止有组件库没安装&#xff0c;将组件库的代码&#xff0c;转成文字了 vue页面 <template><div class"about"><div style"height: 450px; width: 400px"><div style"height: 100%; overflo…

交响曲-24-3-单细胞CNV分析及聚类

CNV概述 小于1kb是常见的插入、移位、缺失等的变异 人体内包含<10% 的正常CNV&#xff0c;我们的染色体数是两倍体&#xff0c;正常情况下&#xff0c;只有一条染色体表达&#xff0c;另一条沉默&#xff0c;当表达的那条染色体发生CNV之后&#xff0c;表达数量就会成倍增加…

UDP -- 简易聊天室

目录 gitee&#xff08;内有详细代码&#xff09; 图解 MessageRoute.hpp UdpClient.hpp UdpServer.hpp Main.hpp 运行结果&#xff08;本地通信&#xff09; 如何分开对话显示&#xff1f; gitee&#xff08;内有详细代码&#xff09; chat_room zihuixie/Linux_Lear…

python对redis的增删查改

python对redis的增删查改 安装 redis-py 库连接 Redis 服务器增1. 字符串&#xff08;String&#xff09;2. 列表&#xff08;List&#xff09;3. 哈希&#xff08;Hash&#xff09;4. 集合&#xff08;Set&#xff09;5. 有序集合&#xff08;Sorted Set&#xff09; 删1. 删除…

电影动画shader解析与实现

着色器代码解析 大家好&#xff01;我是 [数擎AI]&#xff0c;一位热爱探索新技术的前端开发者&#xff0c;在这里分享前端和Web3D、AI技术的干货与实战经验。如果你对技术有热情&#xff0c;欢迎关注我的文章&#xff0c;我们一起成长、进步&#xff01; 开发领域&#xff1a;…

代码随想录算法【Day11】

150. 逆波兰表达式求值 class Solution { public:int evalRPN(vector<string>& tokens) {// 力扣修改了后台测试数据&#xff0c;需要用longlongstack<long long> st; for (int i 0; i < tokens.size(); i) {if (tokens[i] "" || tokens[i] &…

让Qt 具有多选文件夹和记忆上一次打开位置的文件对话框

最近要做一个可以多选文件夹的功能&#xff0c;在网上查阅了多个资料&#xff0c;发现github有一段代码可以实现该功能&#xff0c;于是将其收入进行改造。另外qt自带的 getExistingDirectory 和 getOpenFileNames 不具有记忆上一次打开的文件夹位置。要实现多选文件夹和记忆上…

【杂谈】-50+个生成式人工智能面试问题(一)

50个生成式人工智能面试问题 文章目录 50个生成式人工智能面试问题1、生成式人工智能面试问题与神经网络相关Q1. 什么是Transformers&#xff1f;Q2. 什么是注意力机制&#xff1f;有哪些类型的注意力机制&#xff1f;Q3. 为什么Transformer比RNN架构更好&#xff1f;Q4. Trans…

【FlutterDart】 拖动边界线改变列宽类似 vscode 那种拖动改变编辑框窗口大小(11 /100)

【Flutter&Dart】 拖动改变 widget 的窗口尺寸大小GestureDetector&#xff5e;简单实现&#xff08;10 /100&#xff09; 【Flutter&Dart】 拖动边界线改变列宽并且有边界高亮和鼠标效果&#xff08;12 /100&#xff09; 上效果&#xff1a; 这个在知乎里找到的效果&…