MySQL-基础

1.DQL语句完整语法和执行顺序
select … from … where … group by … having … order by … limit …
顺序:5123467

2.添加外键
alter table emp add constraint f_key foreign key (dept_id) references dept(id) on update cascade on delete cascade;
dept为父表,id为主键字段;emp为子表,dept_id为外键字段;f_key为外键名称;cascade是一种同步跟新的级联行为
删除外键:alter table emp drop foreign key f_key;

3.多表查询
(1)一对多
案例:部门与员工的关系
关系:一个部门对应多个员工,一个员工对应一个部门。实现:在多的一方建立外键,指向一的一方的主键
(2)多对多
案例:学生与课程的关系
关系:一个学生可以选修多门课程,一门课程也可以供多个学生选择实现:建立第三张中间表,中间表至少包含两个外键,分别关联两方主键

(3)一对一
案例:用户与用户详情的关系
关系:一对一关系,多用于单表拆分,将一张表的基础字段放在一张表中,其他详情字段放在另一张表中,以提升操作效率
实现:在任意一方加入外键,关联另外一方的主键,并且设置外键为唯一的(UNIQUE)

4.内连接
隐式:select * from emp, dept where emp.dept_id=dept.id;
显式:select * from emp inner join dept on emp.dept_id=dept.id;

5.左/右外连接
select * from emp e, dept d left/right join on e.dept_id=d.id;

6.自连接(必须取表的别名)
案例:查询员工及其所属领导的名字
select a.name, b.name from emp a, emp b where a.id=b.managerid;
a查领导名字,b查员工名字

7.联合查询
案例:将薪资低于5000的员工,和年龄大于50 岁的员工全部查询出来
select * from emp where salary<5000
union all
select * from emp where age>50;

8.子查询(嵌套查询)
SELECT * FROM t1 WHERE column1 = ( SELECT column1 FROM t2 );

9.事务 :
(1)概念
事务是一组操作的集合,它是一个不可分割的工作单位,事务会把所有的操作作为一个整体一起向系统提交或撤销操作请求,即这些操作要么同时成功,要么同时失败。
就比如:张三给李四转账10oo块钱,张三银行账户的钱减少1000,而李四银行账户的钱要增加1000。这一组操作就必须在一个事务的范围内,要么都成功,要么都失败。

(2)事务操作
查看事务:select @@autocommit;
关闭事务自动提交:set @@autocommnit=0;
开启事务:start transaction/begin;
提交事务:commit;
回滚事务:rollback;
(3)事务四大特性(ACID)
原子性(Atomicity)︰事务是不可分割的最小操作单元,要么全部成功,要么全部失败。
一致性(consistency)︰事务完成时,必须使所有的数据都保持一致状态。
隔离性(Isolation)︰数据库系统提供的隔离机制,保证事务在不受外部并发操作影响的独立环境下运行。
持久性(Durability)︰事务一旦提交或回滚,它对数据库中的数据的改变就是永久的。

10.并发事务问题
(1)赃读:一个事务读到另外一个事务还没有提交的数据。
(2)不可重复读:一个事务先后读取同一条记录,但两次读取的数据不同,称之为不可重复读。
(3)幻读:一个事务按照条件查询数据时,没有对应的数据行,但是在插入数据时,又发现这行数据已经存在,好像出现了 “幻影”。

11.事务隔离级别

查询事务隔离级别:select @@transaction_isolation;
设置事务隔离级别:set session/global transaction isolation level 级别;

参考B站课程:MySQL数据库入门到精通

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

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

相关文章

2023年算法SAO-CNN-BiLSTM-ATTENTION回归预测(matlab)

2023年算法SAO-CNN-BiLSTM-ATTENTION回归预测&#xff08;matlab&#xff09; SAO-CNN-BiLSTM-Attention雪消融优化器优化卷积-长短期记忆神经网络结合注意力机制的数据回归预测 Matlab语言。 雪消融优化器( SAO) 是受自然界中雪的升华和融化行为的启发&#xff0c;开发了一种…

【Javaweb程序设计】【C00162】基于SSM的儿童众筹救助系统(论文+PPT)

基于SSM的儿童众筹救助系统&#xff08;论文PPT&#xff09; 项目简介项目获取开发环境项目技术运行截图 项目简介 这是一个基于ssm的儿童众筹救助系统 本系统分为登录模块、前台模块、管理员模块、用户模块以及发起人模块5个功能模块. 登录模块&#xff1a;这个功能模块用来让…

【自媒体实战】——公众号排版工具调研

公众号排版工具 壹伴 地址&#xff1a;https://yiban.io/ 网站 壹伴 (https://yiban.io/) 主要提供一个高效的微信编辑器&#xff0c;专门服务于公众号运营者。它包括了一系列工具和功能&#xff0c;旨在帮助用户更便捷地进行文章排版、图片编辑、素材寻找和消息回复等操作。…

走方格的方案数(递归)

题目来源 分析 结论 代码 import java.util.Scanner;public class Main {public static int dg(int n, int m) {if (n 1 || m 1) {return (m n);} else {return dg(n - 1, m) dg(n, m - 1);}}public static void main(String[] args) {Scanner sc new Scanner(Syste…

指针的深入了解5

1.二维数组传参本质 在此之前我们学习了一维数组传参&#xff0c;传的是它的首元素地址。那么二维数组也是这样的吗&#xff1f; 我们来看一串代码&#xff1a; void print(int(*pt)[5]) {for (int i 0; i < 3; i){for (int j 0; j < 5; j){printf("%d ",…

Android P 屏保和休眠相关知识

Android P添加屏保功能&#xff0c;如果休眠时间设定大于屏保时间&#xff0c;则先进入屏保&#xff0c;达到休眠时间后再进入休眠 需求&#xff1a; 添加屏幕互保开关&#xff0c;默认关闭。只保留时钟&#xff0c;可设定指针和数字、夜间模式。启用时间改多长时间无操作进入…

【React教程】(3) React之表单、组件、事件处理详细代码示例

目录 事件处理示例1示例2示例3&#xff08;this 绑定问题&#xff09;示例4&#xff08;传递参数&#xff09;Class 和 Style 表单处理组件组件规则注意事项函数式组件&#xff08;无状态&#xff09;类方式组件&#xff08;有状态&#xff09;组件传值 Propsthis.props.childr…

docker-compose部署单机ES+Kibana

记录部署的操作步骤 准备工作编写docker-compose.yml启动服务验证部署结果 本次elasticsearch和kibana版本为8.2.2 使用环境&#xff1a;centos7.9 本次记录还包括&#xff1a;安装elasticsearch中文分词插件和拼音分词插件 准备工作 1、创建目录和填写配置 mkdir /home/es/s…

分表过多引起的问题/Apache ShardingSphere元数据加载慢

目录 环境 背景 探寻 元数据的加载策略 如何解决 升级版本到5.x 调大max.connections.size.per.query max.connections.size.per.query分析 服务启动阶段相关源码 服务运行阶段相关源码 受到的影响 注意事项&#xff08;重要&#xff09; 其他 环境 Spring Boot 2…

70从零开始学Java之Collection与Collections有什么区别?

作者:孙玉昌,昵称【一一哥】,另外【壹壹哥】也是我哦 CSDN博客专家、万粉博主、阿里云专家博主、掘金优质作者 前言 截止到现在,壹哥已经把Java里的List、Set和Map这三大集合都给大家讲解完毕了,不知道各位掌握了多少呢?如果你对之前的内容还没有熟练掌握,可以把壹哥前…

AI新工具(20240129) AI红包封面;Baichuan 3-超千亿参数的大语言模型;腾讯文档智能助手

AI红包封面-定制微信红包封面 AI红包封面生成器利用AI技术&#xff0c;为用户定制微信红包封面&#xff0c;生成精美作品。产品定位于为用户提供个性化、精美的微信红包封面定制服务。定价根据封面定制的复杂程度而定。 AI: Art Impostor-AI绘画多人联机休闲派对游戏 AI: Art…

计网Lesson12 - UDP客户服务器模型和UDP协议

文章目录 丢个图在这&#xff0c;实在不是很明白在讲啥&#xff0c;等学完网编的我归来狠狠拿下它