MySQL数据库应用与开发(全)

news2025/1/12 1:55:04

一、 MySQL数据库基本操作

1、创建表
#创建数据库
CREATE DATABASE teaching CHARSET utf8;
#贴换teaching为当前数据库
USE teaching;

在这里插入图片描述

二、数据表的创建

1、创建学生表
CREATE TABLE IF NOT EXISTS student
(
	studentno CHAR(11) NOT NULL COMMENT '学号',
	sname CHAR(8) NOT NULL COMMENT '姓名',
	sex ENUM('男','女') DEFAULT '男' COMMENT '性别',
	birthdate DATE NOT NULL COMMENT '出生日期',
	entrance INT(3) NULL COMMENT '入学成绩',
	phone VARCHAR(12) NOT NULL COMMENT '电话',
	email VARCHAR(22) NOT NULL COMMENT '电子邮件',
	PRIMARY KEY(studentno)
);

在这里插入图片描述

2、创建课程表
CREATE TABLE IF NOT EXISTS coures
(
	courseno CHAR(6) NOT NULL COMMENT '课程编号',
	cname CHAR(8) NOT NULL COMMENT '课程名称',
	TYPE CHAR(2) NOT NULL COMMENT '类型',
	period INT(2) NOT NULL COMMENT '总学时',
	expa INT(22) NOT NULL COMMENT '实验学时',
	term INT(22) NOT NULL COMMENT '开课学期',
	PRIMARY KEY (courseno)
);

在这里插入图片描述

3、创建成绩表
CREATE TABLE IF NOT EXISTS score
(
	studentno CHAR(11) NOT NULL COMMENT '学号',
	courseno CHAR(6) NOT NULL COMMENT '课程编号',
	daily FLOAT(3,1) DEFAULT 0 COMMENT '平时成绩',
	final FLOAT(3,1) DEFAULT 0 COMMENT '期末成绩',
	PRIMARY KEY (studentno,courseno)
);

在这里插入图片描述

4、创建老师表
CREATE TABLE IF NOT EXISTS teacher
(
	teacherno CHAR(6) NOT NULL COMMENT '教师编号',
	tname CHAR(8) NOT NULL COMMENT '教师姓名',
	major CHAR(10) NOT NULL COMMENT '专业',
	prof CHAR(10) NOT NULL COMMENT '职称',
	department CHAR(16) NOT NULL COMMENT '部门',
	PRIMARY KEY (teacherno)
);

在这里插入图片描述

5、创建老师—课程的关系表
CREATE TABLE IF NOT EXISTS teacher_course
(
	teacherno CHAR(6) NOT NULL COMMENT '老师编号',
	courseno CHAR(6) NOT NULL COMMENT '课程编号',
	PRIMARY KEY (teacherno,courseno)
);

在这里插入图片描述

6、创建选课表(sc)
CREATE TABLE IF NOT EXISTS sc
(
	sc_no INT(6) NOT NULL AUTO_INCREMENT COMMENT '选课的流水号',
	studentno CHAR(11) NOT NULL COMMENT '学号',
	courseno CHAR(6) NOT NULL COMMENT '课程编号',
	teacherno CHAR(6) NOT NULL COMMENT '老师编号',
	sc_time TIMESTAMP NOT NULL DEFAULT NOW() COMMENT '选课时间',
	PRIMARY KEY (sc_no)
);

三、修改数据库表

1.给学生表的Email后面添加一个字段,为address
ALTER TABLE student ADD address VARCHAR(30) NOT NULL AFTER Email;
2.删除给学生表刚添加address列
ALTER TABLE student DROP address;
3.修改sc的表名 ->se_course
ALTER TABLE sc RENAME TO se_course;
4.将课程表的类型(type) ->enum类型
ALTER TABLE course MODIFY TYPE ENUM('必修','选修')DEFAULT '必修';
5.创建exampl表
CREATE TABLE IF NOT EXISTS exampl
(
	today DATETIME COMMENT '当前时间',
	NAME CHAR(20) COMMENT '名称'
);
6.删除exampl表
DROP TABLE exampl;
1、使用insert|replace语句添加多行数据
USE teaching;
INSERT INTO student VALUES
('18122221324','何白露','女','2000/12/4','879','13178978999','heyy@sina.com'),
('18125111109','敬横江','男','2000/3/1','789','15678945623','jing@sina.com'),
('18125121107','梁一苇','女','1999/9/3','777','13145678921','bing@126.com'),
('18135222201','凌浩风','女','2001/10/6','867','15978945645','tang@163.com'),
('18137221508','赵临江','男','2000/2/13','789','12367823453','ping@163.com'),
('19111133071','崔依歌','女','2001/6/6','787','12367823453','ping@163.com'),
('19112100072','宿沧海','男','2002/2/4','658','12545678998','su12@163.com'),
('19112111208','韩山川','男','2001/2/14','666','15878945612','han@163.com'),
('19122203567','封月明','女','2002/9/9','898','13245674564','jiao@126.com'),
('19123567897','赵既白','女','2002/8/4','999','13175689345','pingan@163.com'),
('19126113307','梅惟江','女','2003/9/7','787','13245678543','zhu@163.com');
2、使用replace语句在course表中添加多行数据
REPLACE INTO course VALUES
('c05103','电子技术','必修','64','16','2'),
('c05109','C语言','必修','48','16','2'),
('c05127','数据结构','必修','64','16','2'),
('c05138','软件工程','选修','48','8','5'),
('c06108','机械制图','必修','60','8','2'),
('c06127','机械设计','必修','64','8','3'),
('c06172','铸造工艺','选修','42', '16','6'),
('c08106','经济法','必修','48','0','7'),
('c08123','金融学','必修','40','0','5'),
('c08171','会计软件','选修','32','8','8');
3、演示主键冲突。如果表中已经存在的学号(已设为主键)的记录,再次插入相同的学号,会出现以下”主键冲突”。
4、请说出insert和replace的区别

答:(1)当一个表中存在主键或唯一索引时,该数据已经存在,使用insert插入已有的数据则会出现主键冲突,如果不存在,则会直接插入;

(2)Replace要插入的数据中索引值不同于表中任意一条数据的索引值,就增加一条新的数据,等同于insert,否则,替换原来的数据,等同于先delete再insert;

10.13–MySQL作业

1、将学生表数据整体拷贝到student_copy表
INSERT INTO student_copy SELECT * FROM student; 
1.2将学生表整体拷贝一份(表结构、数据)
CREATE TABLE student2 (SELECT *FROM student)
2、利用load data 语句将数据装入数据库中
2.1假如teacher表的数据数据已放在“d:\teacher.txt”中,现将teach.txt的数据插入到teacher表中
LOAD DATA LOCAL INFILE "d:\\teacher.txt" INTO TABLE teacher;
2.2将学科成绩导入score表中
LOAD DATA LOCAL INFILE "d:\\score.txt" INTO TABLE score;
SELECT * FROM score;
2.3利用load data语句输入teach_course表数据
LOAD DATA LOCAL INFILE "d:\\teach_course.txt" INTO TABLE tecach_course;
SELECT * FROM tecach_course;

10.14–MySQL作业

1、创建student表的备份表student01
CREATE TABLE student01 AS SELECT * FROM student;
2、给student01添加”照片”列
ALTER TABLE student01 ADD FIELDS MEDIUMBLOB COMMENT '照片';

表结构如图所示:

3、给两位同学添加照片,一个存储照片路径,一个存储照片本身
3.1 存储照片路径
INSERT INTO student01 VALUES
('18122221329','何影两','女','2001\12\9','877','13178978997','heyy1@sina.com','D:\\picture.jpg');
3.2存储照片本身
INSERT INTO student01 VALUES('18122221329','王康太','女','2001\12\9','877','13178978997','heyy1@sina.com',LOAD_FILE('C:\\ProgramData\\MySQL\\MySQL Server 5.7\\Uploads\\picture.jpg'));

10.20–MySQL作业

1、将学号为18137221508的学生的课程号为c08106的平时成绩daily修改为80分
UPDATE score SET daily=80 WHERE studentno='18137221508' && courseno='c08106';
2课程student01中低于700分的入学成绩增加8&,(1+0.8)=1.8
UPDATE student01 SET entrance=entrance * 1.08 WHERE entrance<700;
3、删除student01表中的入学成绩低于750分的及记录
#查询学生表入学成绩<750的记录
SELECT *FROM student01 WHERE entrance<750;
#删除student01表中的入学成绩低于750分的及记录
DELETE FROM student01 WHERE entrance<750;
4、删除dtudent01表中入学成绩最低的2行记录;
DELETE FROM student01 ORDER BY entrance LIMIT 2;

10.21–MySQL作业

1、手工创建数据库teachingtest_0506
2、创建student02表,表结构如下:
3、修改表student02的主键,添加sname为主键
ALTER TABLE student02 ADD PRIMARY KEY(sname);
4、删除student02的主键,再加
ALTER TABLE student02 DROP PRIMARY KEY;
5、修改表student02的主键,添加studentno为主键
ALTER TABLE student02 ADD PRIMARY KEY (studentno);

10.27–MySQL作业

一、手工创建score表,并添加数据

1.表结构如下:

2.表数据如下:

二、手工创建teacher表,并添加数据

1.表结构如下:

2.表数据如下:

三、手工创建student02表,并添加数据

1.表结构如下:

2.表数据如下:

四、手工创建course01表,并添加数据

1.表结构如下:

2.表数据如下:

五、手工创建teach_course表,并添加数据

1.表结构如下:

2.表数据如下:

六、手工创建se_course表,并添加数据

1.表结构如下:

2.表数据如下:

10.28–MySQL作业

1. 给对score表的studentno定义外键,保证只能输入student02表所存在的"studentno"
1.1. DDL语句
ALTER TABLE score ADD CONSTRAINT fk_st_score
FOREIGN KEY(studentno) REFERENCES student02(studentno);

1.2. 执行成功后:

2. 对score表的courseno定义外键,保证只能输入course01表中所存在的"courseno"
2.1. DDL
ALTER TABLE score
ADD CONSTRAINT fk_con_score
FOREIGN KEY(courseno) REFERENCES course01(courseno);)

2.2执行成功后

一、创建score表

1、代码

CREATE TABLE IF NOT EXISTS score01
(
	studentno CHAR(11) NOT NULL COMMENT'学号',
	courseno CHAR(6) NOT NULL COMMENT '课程编号',
	daily FLOAT(3,1) DEFAULT 0 COMMENT '平时成绩',
	final FLOAT(3,1) DEFAULT 0 COMMENT '期末成绩',
	PRIMARY KEY (studentno,courseno),
	FOREIGN KEY(studentno) REFERENCES student02(studentno) ON UPDATE CASCADE ON DELETE CASCADE,
	FOREIGN KEY(courseno) REFERENCES course01(courseno) ON UPDATE CASCADE ON DELETE CASCADE
);
2、表结构
3、restrict含义

(1)score01得数据

(2)去student02表中更改

4、Cascade

(1)score1约束

(2)更改student02被引用数据

11.4作业

1、查询teaching数据库course表中的所有数据库
USE teaching;
SELECT * FROM course;     
SELECT courseno,cname,TYPE,period,expa,term FROM course; 
2、查询student表中的studentno、sname和phone数据
SELECT studentno,sname,phone FROM student;
3、在student表中查询出生日期在2001年以后的学生的学号、姓名、电话和年龄
SELECT yeay(NOW());
SELECT studentno AS '学号',sname AS '姓名',phone AS '手机号',
YEAR(NOW())-YEAR(birthdate) AS '年龄' FROM student WHERE YEAR(birthdate)>2001;
4.查询哪些学生都选修了课程?
SELECT DISTINCT studentno FROM score;
5、查询表student中入学成绩在800分以上的学生的学号、姓名和电话信息
SELECT studentno,sname,phone FROM student WHERE entrance>800;

MySQL-11.10作业

1查询学号是’18122210009’,‘18122221324’,课程号,平时成绩,期末成绩

1.1 SqL:

SELECT studentno,courseno,daily,final FROM score WHERE studentno 	IN('18122210009','18122221324');

1.2 截图

2.查询选修了课程号为c05109的学生的学号和期末成绩,并且要求平时成绩在80 到 95 之间

2.1 SQL

SELECT studentno,final FROM score WHERE courseno='c05109' AND daily BETWEEN 80 		AND 95;

2.2 截图

3.查询选修了课程号为c05109的学生的学号和期末成绩,并且要求平时成绩不在80 到 95 之间

3.1 SQL

SELECT studentno,final FROM score WHERE courseno='c05109' AND daily NOT 	BETWEEN 80	AND 95;

3.2 截图为证

4 查询姓王的或者姓韩的,学生信息(姓名,生日,邮箱)

4.1 SQL

SELECT sname,birthdate,email FROM student WHERE sname LIKE '王%' OR sname LIKE '	韩%';

4.2 截图为证

5. 查询名字里含’风’的

5.1 SQL

SELECT * FROM student WHERE sname LIKE '%风%';

5.2 截图为证

6.查询名字是3个汉字,中间是“山"

6.1 SQL

SELECT * FROM student WHERE sname LIKE '_山_';

6.2 截图为证

MySQL-11.11作业

1查询哪些学生都有成绩(哪些学生参加考试了?

1.1Sql

SELECT studentno FROM se_course WHERE score IS NOT NULL;

1.2查询结果集截图

2 查询成绩表中,期中大于90分,期末成绩高于85的学生的学号、课程编号、成绩

2.1 sql

SELECT studentno,courseno,daily,final FROM score WHERE daily>=90 AND final>=85;

2.2 查询结果集截图

3查询计算机学院,具有高级职称的老师的编号、姓名、专业

3.1 sql

SELECT teacherno,tname,major FROM teacher WHERE department='计算机学院' 	AND(prof='讲师'OR prof='教师'); 

3.2 查询结果集截图

4.查询入学成绩>500以上的学生的学号、姓名、入学成绩,并安装入学成绩降序排序

4.1 sql

SELECT studentno 学号,sname 姓名,entrance 入学成绩 FROM student02 WHERE 	entrance>500 ORDER BY entrance DESC;

4.2 查询结果集截图

5.查询入学成绩>500以上的学生的学号、姓名、入学成绩,并按照入学成绩升序排序

5.1sql

SELECT studentno 学号,sname 姓名,entrance 入学成绩 FROM student02 WHERE 	entrance>850 ORDER BY entrance ASC;

5.2 查询结果集截图

6查询入学成绩>500以上的学生的学号、姓名、入学成绩,按照入学成绩降序,并按照学号

6.1sql

SELECT studentno 学号,sname 姓名,entrance 入学成绩 FROM student02 WHERE 	entrance>500 ORDER BY entrance DESC,studentno DESC;

6.2查询结果集截图

7.在score表中查询总评成绩大于70分的学生的学号、课程编号、总评成绩,并按照课程编号升序、再按照总评成绩降序排列

#总评成绩= 期中成绩0.2+期末成绩0.8
7.1sql

SELECT courseno 课程号,daily*0.2+final*0.8 AS '总评',studentno 学号
FROM score WHERE daily*0.2+final*0.8>70 ORDER BY courseno,daily*0.2+final*0.8 	DESC;

7.2查询结果集截图

8对score表进行分组,求出各学生平均总评成绩,平均总评成绩保留2位小数

8.1sql

SELECT studentno 学号,ROUND(AVG(daily*0.3+final*0.7),2) AS '平均分' FROM score 	GROUP BY studentno;

8.2查询结果集截图

MySQL-11.17作业

1.使用group by关键字和group_concat()函数对score表中的studentno字段进行分组查询。可以查看选学该门课程的学生学号。

1.1 SQL

SELECT courseno,studentno,GROUP_CONCAT(studentno) AS "选修该课程的学	号列表" 	FROM score GROUP BY courseno;

1.2 查询结果集截图

2.查找出选修课程的学生数在2名以上的课程

2.1 SQL

SELECT courseno,GROUP_CONCAT(studentno) AS "选修" FROM score GROUP BY 	courseno HAVING COUNT(studentno)>=2;

2.2 查询结果集截图

3.查询选课在2门以上且各门课程期末成绩均高于75分的学生的学号及其总成绩,查询结果按总成绩降序列出。

3.1 SQL

SELECT studentno 学号,SUM(daily*0.3+final*0.7) AS '总分' FROM score WHERE 	final>=75 GROUP BY studentno HAVING COUNT(*) >=2 ORDER BY 总分 DESC;

3.2 查询结果集截图

4. 获取前3条成绩记录

4.1 SQL

SELECT* FROM score LIMIT 0,3;     -- 0:偏移量(跳过0条);3:条数

4.2 查询结果集截图

5.获取成绩表的第4、5、6条,者3条记录

5.1 SQL

SELECT* from score LIMIT 3,;     -- 跳过前3条,取3条

5.2 查询结果集截图

6.查询score表中,期末成绩final高于70分的,按照平时成绩daily进行升序排列,从编号2开始,查询5条记录

6.1 SQL

SELECT * FROM score WHERE final>=70 ORDER BY daily ASC LIMIT 2,5;

6.2 查询结果集截图

7. 查询目前所有学生的期末总分

7.1 SQL

SELECT SUM(final) AS '期末总分' FROM score;

7.2 查询结果集截图

8. 获取目前所有学生的期末最高分

8.1 SQL

SELECT MAX(final) AS '期末最高分' FROM score;

8.2 查询结果集截图

9获取目前所有学生的期末最低分

9.1 SQL

SELECT MIN(final) AS '期末最低分' FROM score;

9.2 查询结果集截图

10获取目前有多少个学生有成绩

10.1 SQL

SELECT COUNT(*) AS '选修课程学生总数' FROM score;

10.2 查询结果集截图

11. 获取目前所有学生的平均期末成绩

11.1 SQL

SELECT AVG(final)AS '期末平均成绩' FROM score;

11.2 查询结果集截图

12. 通过查询求18级学生的总数

12.1 SQL
#方案一:

SELECT COUNT(studentno) AS '18级学生数' FROM student2 WHERE 	SUBSTRING(studentno,1,2)='18';  -- 1:从第一位开始截取;2:截取个数

#方案二:

SELECT COUNT(studentno) AS '18级学生数' FROM student2 WHERE studentno 	LIKE'18%';  

12.2 查询结果集截图

MySQL-11.18作业

1.查询score表中学生的期末总成绩大于100分的学生学号、总期末成绩及平均期末成绩。

1.1 SQL

SELECT studentno,AVG(final) AS '期末平均成绩',SUM(final) AS '期末总成绩'
FROM score 
GROUP BY studentno 
HAVING SUM(final)>100;

1.2 查询结果集

2.查询选修课程号为c05109号课程的期末最高分、最低分及之间相差的分数。

2.1 SQL

SELECT MAX(final) 最高分,
MIN(final) 最低分,
MAX(final)-MIN(final) AS 分差 
FROM score 
WHERE (courseno='c05109');

2.2 查询结果集

3.查询score表中每一门课的期末平均值和所有成绩的平均值以及所有科目的期中、期末平均分

3.1 SQL

SELECT courseno,AVG(daily) AS 期末平均分,
AVG(daily) AS 期末平均分
FROM score
GROUP BY courseno WITH ROLLUP;

3.2 查询结果集

4.查询选修课程号为c05109的学生的学号、姓名和期末成绩。

– 内联
– 方案1
4.1 SQL

SELECT student.studentno,sname,final 
FROM student 
INNER JOIN score 
ON student.studentno=score.studentno 
WHERE score.courseno='c05109';

4.2 查询结果集

– 方案2
4.3 SQL

SELECT student.studentno,sname,final 
FROM student,score 
WHERE student.studentno=score.studentno 
AND score.courseno='c05109';

4.4 查询结果集

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

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

相关文章

TextCNN:文本分类卷积神经网络

模型原理 1、前言2、模型结构3、示例3.1、词向量层3.2、卷积层3.3、最大池化层3.4、Fully Connected层 4、总结 1、前言 TextCNN 来源于《Convolutional Neural Networks for Sentence Classification》发表于2014年&#xff0c;是一个经典的模型&#xff0c;Yoon Kim将卷积神…

Java 中常用的数据结构类 API

目录 常用数据结构API 对应的线程安全的api 高可用衡量标准 常用数据结构API ArrayList: 实现了动态数组&#xff0c;允许快速随机访问元素。 import java.util.ArrayList; LinkedList: 实现了双向链表&#xff0c;适用于频繁插入和删除操作。 import java.util.LinkedLis…

「连载」边缘计算(十九)02-22:边缘部分源码(源码分析篇)

&#xff08;接上篇&#xff09; 从启动函数Start(&#xff09;中可以看到&#xff0c;其以go routine的方式启动很多后台处理服务&#xff0c;具体如下。 1&#xff09;初始化edged的kubeClient&#xff0c;具体如下所示。 // use self defined client to replace fake kube…

深度神经网络中的计算和内存带宽

深度神经网络中的计算和内存带宽 文章目录 深度神经网络中的计算和内存带宽来源原理介绍分析1&#xff1a;线性层分析2&#xff1a;卷积层分析3&#xff1a;循环层总结 来源 相关知识来源于这里。 原理介绍 Memory bandwidth and data re-use in deep neural network computat…

卷积神经网络 CNN

目录 卷积网络与传统网络的区别 参数共享 卷积神经网络整体架构 卷积操作的作用 卷积核的定义 卷积特征值计算方法 卷积层涉及的参数 边缘填充 ​编辑 卷积结果计算 池化层 整体网格架构 VGG网络架构 残差网络Resnet 卷积网络与传统网络的区别 卷积神经网络&#x…

fly-barrage 前端弹幕库(2):弹幕内容支持混入渲染图片的设计与实现

如果弹幕内容只支持文字的话&#xff0c;只需要借助 canvas 绘图上下文的 fillText 方法就可以实现功能了。 但如果想同时支持渲染图片和文字的话&#xff0c;需要以下几个步骤&#xff1a; 设计一个面向用户的数据结构&#xff0c;用于描述弹幕应该渲染哪些文字和图片&#x…

C++ //练习 9.14 编写程序,将一个list中的char*指针(指向C风格字符串)元素赋值给一个vector中的string。

C Primer&#xff08;第5版&#xff09; 练习 9.14 练习 9.14 编写程序&#xff0c;将一个list中的char*指针&#xff08;指向C风格字符串&#xff09;元素赋值给一个vector中的string。 环境&#xff1a;Linux Ubuntu&#xff08;云服务器&#xff09; 工具&#xff1a;vim…

基于ZYNQ的PCIE高速数据采集卡的设计(三)硬件设计

采集卡硬件设计 3.1 引言 采集卡的硬件设计是实现采集功能的基础&#xff0c;良好的硬件设计可以使采集功能更容 易实现&#xff0c;方便软件开发。本章基于第二章的硬件设计方案来详细介绍采集卡硬件设计。 包括载卡和子卡的芯片的选型、配置和具体电路的设计。载卡和子卡…

【计算机网络】应用层自定义协议

自定义协议 一、为什么需要自定义协议&#xff1f;二、网络版计算器1. 基本要求2. 序列化和反序列化3. 代码实现&#xff08;1&#xff09;封装 socket&#xff08;2&#xff09;定制协议和序列化反序列化&#xff08;3&#xff09;客户端&#xff08;4&#xff09;计算器服务端…

通过IP地址确定地理位置

在互联网世界中&#xff0c;每个设备或用户在进行网络通信时&#xff0c;都会使用到一个独特的标识&#xff0c;即IP地址。IP地址不仅用于标识网络中的设备&#xff0c;还可以在一定程度上揭示出这些设备或用户的地理位置信息。本文将详细探讨如何通过IP地址确定地理位置&#…

2-23 switch、JVM内存模型、垃圾回收机制、this、static、变量的分类

文章目录 switch 实现成绩评级JVM内存模型概念栈的特点堆的特点 垃圾回收机制通用的分代垃圾回收机制三种清理算法垃圾回收过程垃圾回收常见的两种检测引用算法内存泄露常见原因 this的用法创建对象的四步 static 静态特点 变量的分类和作用域import switch 实现成绩评级 switc…

Linux基础命令—系统服务

基础知识 centos系统的开机流程 1)通电 2)BIOS硬件检查 3)MBR引导记录 mbr的引导程序 加载引导程序 让硬件加载操作系统内核 MBR在第一个磁盘第一个扇区 总大小512字节 mbr: 1.引导程序: 占用446字节用于引导硬件,加载引导程序 2.分区表: 总共占…

Seata分布式事务实战XATCC模式

目录 XA模式 XA 模式的使用 Spring Cloud Alibaba整合Seata XA TCC模式 TCC模式接口改造 TCC如何控制异常 Spring Cloud Alibaba整合Seata TCC XA模式 整体机制 在 Seata 定义的分布式事务框架内&#xff0c;利用事务资源&#xff08;数据库、消息服务等&#xff09;对…

Mysql学习之数据库事务

事务 数据库事务概述 事务是数据库区别于文件系统的重要特性之一&#xff0c;当有了事务就可以让数据库始终保持一致性。同时还可以通过事务的机制&#xff0c;恢复到某个时间点&#xff0c;这样就可以保证以提交到数据库的修改不会因为系统崩溃而丢失 只有Innodb支持事务的 …

camunda7流程平台技术架构概述

Camunda Platform 是一个基于 Java 的BPMN(流程引擎)、DMN&#xff08;规则引擎&#xff09;、CMMN&#xff08;案例管理&#xff09;的开源框架。主要组件是用 Java 编写的&#xff0c;主要专注于为 Java 开发人员提供在 JVM 上设计、实现和运行业务流程和工作流所需的工具&am…

【TCP/IP】内核网络堆栈

在Linux内核中&#xff0c;网络堆栈&#xff08;network stack&#xff09;是一套实现网络通信功能的软件包&#xff0c;负责处理数据包的发送和接收。网络堆栈按照OSI模型&#xff08;开放式系统互联通信参考模型&#xff09;或TCP/IP模型的层次结构来组织&#xff0c;实现了从…

Linux-部署各类软件(黑马学习笔记)

MYSQL MYSQL5.7版本在CentOS系统安装 注意&#xff1a;安装操作需要root权限 MySQL的安装我们可以通过前面学习的yum命令进行。 安装 1.配置yum仓库 # 更新密钥 rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022# 安装Mysql yum库 rpm -Uvh http://repo.mysql.…

端口映射的软件有哪些?

端口映射软件是一种实用工具&#xff0c;能够帮助用户在网络中实现远程通信&#xff0c;解决不同地区电脑与电脑、设备与设备、电脑与设备之间的信息传输问题。其中&#xff0c;【天联】组网天联是一款功能强大的端口映射软件&#xff0c;它通过在全国各主要节点部署加速服务器…

介绍 Gradio 与 Hugging Face

&#x1f349; CSDN 叶庭云&#xff1a;https://yetingyun.blog.csdn.net/ 我们可以使用 Gradio 库为我们的模型构建演示。Gradio 允许您完全使用 Python 为任何机器学习模型构建、自定义和共享基于 Web 的演示。使机器学习模型变得可交互和易于使用。 为什么首先要为您的机器…

贪心算法(算法竞赛、蓝桥杯)--奶牛耍杂技

1、B站视频链接&#xff1a;A24 贪心算法 P1842 [USACO05NOV] 奶牛玩杂技_哔哩哔哩_bilibili 题目链接&#xff1a;[USACO05NOV] 奶牛玩杂技 - 洛谷 #include <bits/stdc.h> using namespace std; const int N50005; struct node{int w,s;bool operator<(node &…