SQL数据库知识点总结归纳

news2024/9/24 19:22:48

 前后顺序可以任意颠倒,不影响库中的数据关系

关系数据库的逻辑性强而物理性弱,因此关系数据库中的各条记录前后顺序可以任意颠倒,不影响库中的数据关系

一名员工可以使用多台计算机(1:m),而一台计算机只能被一名员工使用(1:1),所以员工和计算机两个实体之间是一对多的关系

4f1a322ac51a4f1482f3973c1382b846.png

视图是指计算机数据库的视图,是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据,但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自定义视图的查询所引用的表,并且在引用视图时动态生成。视图一经定义就无法修改 

视图一经定义就无法修改 

28686326146f4917bb4c7598d853e6b1.png

DATEADD() 函数在日期中添加或减去指定的时间间隔。

语法 :DATEADD(datepart,number,date)

datapart参数的取值范围{yy/yyyy,qq/q,mm/m,dy/y,dd/d,wk/ww,dw/w,hh,mi/n,ss/s,ms,mcs,ns}

number 是你希望添加的间隔数

date 参数是合法的日期表达式
负责数据库中查询操作的数据库语言数据操纵语言

SQL语言中数据定义语言DDL中包括哪个语句(A)
A、DROP
B、DELETE
C、select
D、grant

数据定义d语言:负责数据的模式定义与数据的物理存取构建;

数据定义语言(DDL):CREATE(创建数据库或表或索引)ALTER(修改表或者数据库)DROP(删除表或索引)

数据操纵m语言:负责数据的操纵,包括查询及增、删、改等操作;

数据操纵语言(DML): SELECT(查询) INSERT(插入) UPDATE(更新) DELETE(删除)

数据控制c语言:负责数据完整性、安全性的定义与检查以及并发控制、故障恢复等功能。

数据查询语言(DQL):是由SELECT子句,FROM子句,WHERE子句组成的查询块

数据控制语言(DCL):GRANT(赋予用户权限) REVOKE(收回权限) DENY(禁止权限)

数据库管理系统是 在操作系统支持下的系统软件

数据库管理系统是数据库的机构,它是一种系统软件,负责数据库中数据组织、数据操纵、数据维护、控制及保护和数据服务等。是一种在操作系统之上的系统软件。 

修改表结构的关键字都是alter table 表名,再跟具体修改的语句,如

添加表字段

alter table table_name add 字段名称 字段类型

删除表字段

alter table table_name drop 字段名称

修改表字段

alter table table_name change 旧字段名称 新字段名称 字段类型

alter table table_name modify 字符名称 字符类型

在sql数据库中,哪个语句能校验整数列 i 的值不小于 1 不大于 10 ? A

A i BETWEEN 1 AND 10

B i BETWEEN 0 AND 11

C i IN INTERVAL(0,11)

D i IN INTERVAL(1,10) 

当interval作为函数时,它被当作一个比较函数,即interval(),如interval(4,0,1,2,3,4,5,6) ,则在函数中,第一个数4作为被比较数,后面的0,1,2,3,4,5,6为比较数,然后将后面的数字依次与4进行比较,返回小于等于4的个数,所以上述结果为5,注意只有将4后面的数字从大到小进行排序,interval函数才能正常使用,若排序混乱,也可以使用但会影响最终结果。

当interval作为关键字时,表示为时间间隔,常用在date_add()、date_sub()函数中,常用于时间的加减法,查询当前时间之前两个小时的日期:select now()—interval 2 hours;
a74f4094e1cb45debcd2dd486e79b988.png

 HAVING在查询语句中必须依赖于GROUP BY

WHERE子句用来限制SELECT语句从表中指定选取的行

 GROUP BY子句用来分组WHERE子句的输出结果集

having是分组查询时,在分组后条件过滤,这里的过滤是针对行来过滤,不是筛选列

where是分组前的过滤,group by 是分组 

6e556c08278b452490b84a2647847686.png

数据库系统的特点:数据共享性高,冗余度小;具有高度的物理独立性和逻辑独立性;整体结构化,用数据模型描述;由数据库系统提供数据安全性、完整性、 并发控制和恢复能力。简单说即数据库系统的特点为高共享、低冗余、独立性高、具有完整性等。

sum返回表达式中所有数的总和,因此只能用于数字类型的列

avg不能使用日期型的列,max和min只能用于数值型的列,count可以使用任意类型的字段,但都不属于求和函数 

将实体-联系模型转换为关系模型时,实体之间多对多联系在关系模型中的实现方式是( )A 

A 建立新的关系 B 建立新的属性 C 增加新的关键字 D 建立新的实体 

将实体-联系模型转换为关系模型时,一个m:n的联系可以转换为一个独立的关系模式,与该联系相连的各实体的码及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。故本题答案为A选项。 

设有表示学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程C(课号,课名),选课SC(学号,课号,成绩),则表SC的关键字(键或码) 为( )。 C

A 课号,成绩 B 学号,成绩 C 学号,课号 D 学号,姓名,成绩 

学号是学生表S的主键,课号是课程表C的主键,所以选课表SC的关键字就应该是与前两个表能够直接联系且能唯一定义的学号和课号,所以选择C。 

关系数据库所采用的数据存放形式是() A

A 二维表 B 链表 C 网状 D 二叉树 

关系数据库是以“二维表”的形式组织和存放数据的。. 关系数据库的表采用二维表格来存储数据,是一种按行与列排列的具有相关信息的逻辑组,它类似于Excel工作表;一个数据库可以包含任意多个数据表。 

某关系表有:员工(部门编号,部门名称,员工编号,姓名,性别,年龄),则其主码为()。A

A 部门编号、员工编号 B 员工编号 C 姓名 D 部门编号

由于一个员工可能属于多个部门(如CEO等),所以主码应该选A 

 在使用 limit 子句时,如果没有足够的行,则:B

A MySQL会报错 B MySQL将只返回它能返回的那么多行 C MySQL将不会返回任何行 

 给出数据表 score(stu-id,name,math,english,Chinese), 下列语句正确的是( )A

A Select sum(math),avg(chinese) from score

B Select *,sum(english) from score

C Select stu-id, sum(math) from score

D Delete * from score 

B和C:*多行,sum一行,stu_id多行,sum一行,D:正确的删除为delete from score 
def676582afb44fe9895433e3114c239.png

数据库做join操作时,至少要涉及到几张表? B

A 3 B 1 C 2 D 4 

自连接即涉及一张表 

在一个mysql查询中,使用哪一个关键字能去除重复列值() C

A group by B order by C distinct D limit 

在一个含有group by的查询sql中,同时存在having和where,sql在解析执行的时候,先执行的是哪一个? B

A having B where 

在下面的两个关系中,职工号和部门号分别为职工关系和部门关系的主键(或称主码)职工(职工号、职工名、部门号、职务、工资) 部门(部门号、部门名、部 门人数、工资总额) 在这两个关系的属性中,只有一个属性是外键(或称外来键、外码、外来码),它是 ______ B

A 职工关系的“职工号” B 职工关系的“部门号” C 部门关系的“职工号” D 部门关系的“部门号” 

职工与部门是一对多的关系,职工号为职工关系的主键,部门号为部门关系的主键,职工关系的部门号为外键
 

语句 SELECT IF(-1,5,2) 的返回值是: D

A 2 B 6 C -1 D 5 

if()函数的具体用法:IF(expr1,expr2,expr3),如果expr1值为真(Boolean值为true,或不为0的值),则返回expr2的值,否则返回expr3的值
 

下列哪一个命令为删除 sample 数据库的 tb_ame 表() D

A delete from tb_ame

B delete from sample.tb_ame

C drop table tb_ame

D drop table sample.tb_ame 

删除表用的是drop table 删除表中的数据是delete from,C选项中必须在已经使用sample数据库之后才能使用,D选项不论在哪一个数据库都能使用


 

数据库中存在学生表S、课程表C和学生选课表SC三个表,它们的结构如下:S(S#,SN,SEX,AGE,DEPT)C(C#,CN)SC(S#,C#,GRADE)其中:S#为学号,SN 为姓名,SEX为性别,AGE为年龄,DEPT为系别,C#为课程号,CN为课程名,GRADE为成绩。请检索选修课程号为C2的学生中成绩最高的学号。( )D

A SELECT S#,SUM(GRADE)FROM SC WHERE GRADE>=60 GROUP BY S# ORDER BY 2 DESC HAVING COUNT(*)>=4 WHERE C#=“C2” AND GRADE  >=(SELECT GRADE FORM SC WHERE C#=“C2”)

B SELECT S# FORM SC WHERE C#=“C2” AND GRADE IN (SELECT GRADE FORM SC WHERE C#=“C2”)

C SELECT S# FORM SC WHERE C#=“C2” AND GRADE NOT IN (SELECT GRADE FORM SC WHERE C#=“C2”)

D SELECT S# FORM SC WHERE C#=“C2” AND GRADE>=ALL (SELECT GRADE FORM SC WHERE C#=“C2”) 

只要学号直接排除A

成绩最高使用ALL,>=就是大于等于ALL后面的最大值;

如果是小于就是小于ALL后面的最小值;
 

在关系型是数据库中,有两个不同的事务同时操作数据库中同一表的同一行,不会引起冲突的是: F

A 其中一个DELETE操作,一个是SELECT操作

B 其中两个都是UPDATE

C 其中一个是SELECT,一个是UPDATE

D 其中一个SELECT E 其中一个是DELETE,另一个是UPDATE

F 两个都是DELETE 

当要删除的记录在数据库中不存在的时候,是不会报错的。

以下哪个不是与Mysql服务器相互作用的通讯协议() B

A TCP/IP B UDP C 共享内存 D Socket 

如果事务T获得了数据项Q上的排它锁,则T对Q______。 C

A 只能读不能写 B 只能写不能读 C 既可读又可写 D 不能读不能写 

共享(S)锁:多个事务可封锁一个共享页;任何事务都不能修改该页; 通常是该页被读取完毕,S锁立即被释放。

排它(X)锁:仅允许一个事务封锁此页;其他任何事务必须等到X锁被释放才能对该页进行访问;X锁一直到事务结束才能被释放。

更新(U)锁:用来预定要对此页施加X锁,它允许其他事务读,但不允许再施加U锁或X锁;当被读取的页将要被更新时,则升级为X锁;U锁一直到事务结束时才 能被释放。 

下列选项中,不属于SQL约束的是: D

A UNIQUE B PRIMARY KEY C FOREIGN KEY D BETWEEN 

SQL共有六种约束:

1、not null  非空约束;

2、unique 唯一性约束;

3、primary key约束  :约束唯一标识数据库表中的每条记录(主键),主键必须包含唯一的值,且不为空;

4、foreign key约束:用于预防破坏表之间连接的动作;

5、check 约束 :用于限制列中的值的范围;

6、default约束 :用于向列中插入默认值 。

下列sql语句中哪条语句可为用户zhangsan分配数据库userdb表userinfo的查询和插入数据权限()。 A

 A grant select,insert on userdb.userinfo to'zhangsan'@'localhost'

B grant'zhangsan'@'localhost'to select,insert for userdb.userinfo

C grant select,insert on userdb.userinfo for'zhangsan'@'localhost'

D grant'zhangsan'@'localhost'to userdb.userinfo on select,insert

权限授予格式:grant [权限] on [table] to 'username'@'localhost';

下列对于数据库索引的说法一定是错误的() B

A 索引可以提升查询,分组和排序的性能

B 索引不会影响表的更新、插入和删除操作的效率

C 全表扫描不一定比使用索引的执行效率低

D 对于只有很少数据值的列,不应该创建索引 

当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,这样就降低了数据的维护速度。 

下面哪个SQL命令用来向表中添加列() D

A MODIFY TABLE TableName ADD COLUMN ColumnName

B MODIFY TABLE TableName ADD ColumnName

C ALTER TABLE TableName ADD COLUMN ColumnName

D ALTER TABLE TableName ADD ColumnName Type 

MODIFY 是用来改变表列性质;ADD是增加列;

用法:ALTER TABLE 表名 MODIFY(列名,列的性质&

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

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

相关文章

学习前端都需要学什么?

前端开发是一门需要掌握多种技术和工具的综合性学科。作为一名合格的前端开发者,需要具备以下几方面的知识和技能: HTML:HTML 是构建网页的基础,是前端开发的第一步。需要掌握各种 HTML 标签的使用和语义化的编写方式&#xff0c…

公有云迁移研究——AWS Translate

大纲 1 什么是Translate2 Aws Translate是怎么运作的3 Aws Translate和Google Translate的区别4 迁移任务4.1 迁移原因 5 Aws Translate的Go demo6 迁移中遇到的问题6.1 账号和权限问题:6.2 小语种 1 什么是Translate Translate是一种文本翻译服务,它使…

04、pytest运行多个测试用例

官方用例 目录结构 course_04 | |----subdir | | | |----sample03_test.py | | | |----test_sample04.py | |----sample02_test.py | |----test_sample01.py# content of test_sample01.pydef test_simple01():print("test simple01")assert 0# content of tes…

配置集群免密登录

文章目录 前言配置集群免密登录1. 设置主机名与 IP 地址的映射关系2. 生成 SSH 密钥对3. 将公钥复制到集群节点4. 测试免密登录5. 配置节点之间互相免密登录 总结 前言 本文介绍了如何配置集群之间免密登录,以便在搭建集群环境时方便地进行节点之间的通信。通过设置…

Blender学习:荧光树桩

文章目录 雕刻基础盆栽渲染 教程地址:八个案例教程带你从0到1入门blender【已完结】 雕刻基础 1 新建圆柱->进入编辑模式->CtrlR新增5条横向的分割线。然后进入面模式,选中相邻的9个小面,按E挤出,S缩小,G上移。…

linux远程桌面管理工具(xrdp)、向日葵

Windows远程桌面 linux远程桌面 使用向日葵远程桌面(手机端同理) Windows远程桌面 微软自带Remote Desktop Connection Manager (RDCMan)远程控制管理软件介绍 远程桌面连接管理器 v2.93 linux远程桌面 Windows远程桌面Ubunt…

【部署】Deploying Trino on linux

文章目录 一. Requirements1. Linux operating system2. Java 环境3. Python 二. Installing Trino三. Configuring Trino1. 节点配置2. JVM 配置3. Config properties4. Log levels5. Catalog properties 四. Running Trino 一. Requirements 1. Linux operating system 64位…

Qt 软件调试——windbg初篇(一)

在上一篇《Qt 软件调试(二)使用dump捕获崩溃信息》中我们结尾处提示大家先准备好windbg,windbg是非常强大的调试工具,对于我们进行代码调试和分析异常有着非常重要的意义。 在Qt软件调试这个系列的首篇,我们介绍了《Qt…

【springboot】整合redis

1.前提条件:docker安装好了redis确定redis可以访问 可选软件: 2.测试代码 (1)redis依赖 org.springframework.boot spring-boot-starter-data-redis (2)配置redis (3) 注入 Resource StringRedisTemplate stringRedisTemplate; 对键进行操作 –o…

竞赛选题YOLOv7 目标检测网络解读

文章目录 0 前言1 yolov7的整体结构2 关键点 - backbone关键点 - head3 训练4 使用效果5 最后 0 前言 世界变化太快,YOLOv6还没用熟YOLOv7就来了,如果有同学的毕设项目想用上最新的技术,不妨看看学长的这篇文章,学长带大家简单的…

Nacos前世今生、安装配置、服务注册源码、整合Springboot实战

一、前言 随着微服务架构的兴起,服务的规模不断增长,对于服务的发现、配置和管理变得越来越复杂。 在这个背景下,Nacos应运而生,以其强大的功能和灵活性成为云原生领域的瑞士军刀之一。 Nacos是一个由阿里巴巴开源的项目&#…

Inference with C# BERT NLP Deep Learning and ONNX Runtime

目录 效果 测试一 测试二 测试三 模型信息 项目 代码 下载 Inference with C# BERT NLP Deep Learning and ONNX Runtime 效果 测试一 Context :Bob is walking through the woods collecting blueberries and strawberries to make a pie. Question …

代码随想录刷题题Day5

刷题的第五天,希望自己能够不断坚持下去,迎来蜕变。😀😀😀 刷题语言:C / Python Day5 任务 ● 哈希表理论基础 ● 242.有效的字母异位词 ● 349. 两个数组的交集 ● 202. 快乐数 ● 1. 两数之和 1 哈希表理…

Rust 枚举和模式匹配

目录 1、枚举的定义 1.1 Option 枚举和其相对于空值的优势 2、match 控制流结构 2.1 匹配 Option 2.2 匹配是穷尽的 2.3 通配模式和 _ 占位符 3、if let 简洁控制流 1、枚举的定义 枚举(enumerations),也被称作 enums。枚举允许你通过…

微信小程序 纯css画仪表盘

刚看到设计稿的时候第一时间想到的就是用canvas来做这个仪表盘&#xff0c;虽然本人的画布用的不是很好但还可以写一写&#x1f600;。话不多说直接上代码。最后有纯css方法 <!--wxml--> <canvas canvas-id"circle" class"circle" >// js dat…

文章解读与仿真程序复现思路——中国电机工程学报EI\CSCD\北大核心《考虑富氧燃烧技术的电–气–热综合能源系统低碳经济调度》

这个标题涉及到一个关于能源系统和经济调度的复杂主题。让我们逐步解读&#xff1a; 电–气–热综合能源系统&#xff1a; 指的是一个综合的能源系统&#xff0c;包括了电力、气体&#xff08;可能是天然气等&#xff09;、热能等多个能源形式。这种系统的设计和优化旨在使不同…

【数据结构(六)】排序算法介绍和算法的复杂度计算(1)

文章目录 1. 排序算法的介绍1.1. 排序的分类 2. 算法的时间复杂度2.1. 度量一个程序(算法)执行时间的两种方法2.2. 时间频度2.2.1. 忽略常数项2.2.2. 忽略低次项2.2.2. 忽略系数 2.3. 时间复杂度2.4. 常见的时间复杂度2.5. 平均时间复杂度和最坏时间复杂度 3. 算法的空间复杂度…

编码器-解码器(seq-seq)

1. 背景 encoder-decoder和seq-seq模型可以解决输入与输出都是不定长序列的问题。它们都用到了两个循环NN&#xff0c;分别叫做编码器(用来分析输入序列)与解码器(用来生成输出序列)。 2. 编码器 把一个不定长的输入序列变换成一个定长的背景变量c&#xff0c;并在其中编码输入…

分享72个节日PPT,总有一款适合您

分享72个节日PPT&#xff0c;总有一款适合您 72个节日PPT下载链接&#xff1a;https://pan.baidu.com/s/17Lmlvd_xN-xRSKu3FZUS9w?pwd6666 提取码&#xff1a;6666 Python采集代码下载链接&#xff1a;采集代码.zip - 蓝奏云 学习知识费力气&#xff0c;收集整理更不易…

驱动开发--内核添加新功能

Ubuntu下这个文件为开发板ls命令的结果 内核的内容&#xff1a; mm&#xff1a;内存管理 fs&#xff1a;文件系统 net&#xff1a;网络协议栈 drivers&#xff1a;驱动设备 arch与init&#xff1a;跟启动相关 kernel与ipc&#xff1a;任务&#xff0c;进程相关 向内核增…