Linux云计算训练营笔记day08(MySQL数据库)
Linux云计算训练营笔记day08(MySQL数据库)
目录
- Linux云计算训练营笔记day08(MySQL数据库)
- 数据准备
- 修改更新update
- 删除delete
- 数据类型
- 1.整数类型
- 2.浮点数类型(小数)
- 3.字符类型
- 4.日期
- 5.枚举: 表头的值必须在列举的值里选择
- 拷贝表
- 复制表头和数据
- 只复制表头不复制数据
- 约束条件
- 约束种类
- 主键
- 自增
- 非空约束
- 唯一约束
- 检查约束
数据准备
– Active: 1747188627686@@127.0.0.1@3306@gongli
CREATE DATABASE gongli CHARSET=utf8;
use gongli;
CREATE Table user(id int,name VARCHAR(15),age int
);
INSERT INTO user VALUES(1,"张三",18);
INSERT INTO user VALUES(2,"李四",30);
INSERT INTO user VALUES(3,"王五",40);
修改更新update
update 表名 set 字段=值 where 条件
where中常用的基础条件= > >= < <= <>(不等于)
-- 1.把张三的名字修改为韩立 ctrl + /
UPDATE user set name="韩立" where name="张三";
-- 2.把id为2的名字修改为王林
UPDATE user set name="王林" where id=2;
-- 3.同时修改多个值
UPDATE user set name="萧炎", age=25 where id=3;
删除delete
删除 delete 用于删除表中的记录
delete from 表名 where 条件
-- 删除id大于等于3的数据
DELETE from user where id>=3;
DELETE from user where name="王林";
-- 把表中所有的数据都删除, 表还存在
DELETE from user;
-- 显示当前库中的所有表
SHOW TABLES;
-- 删除user表 把表中所有的数据都删除, 表也不存在
DROP TABLE user;
-- 查询所有数据
SELECT * from user;
总结:
insert 向表中插入数据
update 修改表中的数据
delete 删除表中的数据
-- 1)创建数据库nsd,字符集使用utf8
CREATE DATABASE nsd CHARSET=utf8;
-- 2)创建表userinfo,字段有id(整数类型,长度为3) name字段(字符串类型)
-- money(整数类型,长度为6) age字段(整数类型,长度为3)
use nsd;
CREATE TABLE userinfo(id int(3),name VARCHAR(18),money int(6),age int(3)
);
-- 3)修改表名为user
RENAME TABLE userinfo to user;
-- 4)向表中插入数据 1 元瑶 8000 28 2 李木婉 10000 30
INSERT INTO user VALUES(1,"元瑶",8000,28),(2,"李木婉",10000,30);
-- 5)修改元瑶的年龄为35岁
UPDATE user set age=35 where name="元瑶";
-- 6)修改年龄小于35岁的价格为5000
UPDATE user set money=5000 where age<35;
SELECT * from user;
-- 7)删除价格为5000的信息
DELETE from user where money=5000;
-- 8)删除表
DROP TABLE user;
-- 9)删除数据库
DROP DATABASE nsd;
show DATABASEs;
数据类型
在数据库中每一张表的每一个字段都要指定数据类型以确保可以正确的保存对应的数据
1.整数类型
TINYINT (-128,127)
SMALLINT (-32 768,32 767)
INT (-2 147 483 648,2 147 483 647) 13049306482
BIGINT (-9,223,372,036,854,775,808,9 223 372 036 854 775 807)
CREATE Table test1(id int,phone bigint
);
INSERT into test1 VALUES(1, 13049306482);
2.浮点数类型(小数)
FLOAT 单精度
DOUBLE 双精度
DOUBLE(m,n): m和n都是一个整数,m用于表示数字的总位数,n表示小数的位数,m包含n
double(7,4): 一共有7位数字,其中4位是小数,最大值是999.9999
create table person(age TINYINT(3), salary DOUBLE(7,2)
);
desc person;
-- TINYINT的范围是-128 ~~ 127, 取值不能超过,超范围会报错
INSERT into person VALUES(99,500.00);
-- 总共是7位.小数点保留2位,最大值是99999.99
INSERT into person VALUES(99,99999.99);
-- 插入小数时,如果精度超多了最大范围,会四舍五入
INSERT into person VALUES(99, 99999.678);
-- INSERT into person VALUES(99, 99999.996); 四舍五入后超过了范围也会报错
select * from person;
CREATE Table t1(id INT,age TINYINT
);
desc t1;
3.字符类型
char(n) 定长字符串,无论实际保存的字符是多少,该字段一定占用字段指定长度的字符两,不足部分补充空格
n是一个数字,最大长度是255
缺点:磁盘空间有所浪费 优点:磁盘空间占用长度是固定的,查询效率高
varchar(n)变成字符串,磁盘占用量由实际保存的数据决定(用多少占多少)
n是一个数字,最大长度是65535
缺点:查询效率慢一点 优点:磁盘空间没有浪费
如果超出字符的个数会报错
CREATE DATABASE tedu1 CHARSET=utf8;
use tedu1;
CREATE Table user(id int,name VARCHAR(3),email VARCHAR(15),city char(10)
);
-- 如果超出字符的个数会报错
INSERT INTO user VALUES(1, "唐三", "59361882@qq.com");
INSERT INTO user VALUES(12, "唐小舞", "59361882@qq.com");
SELECT * from user;
drop table user;
4.日期
DATE(仅日期,格式YYYY-MM-DD) 年月日 19991117
TIME(时间或时间间隔,格式HH:MM:SS) 时分秒
DATETIME(日期+时间,范围1000-9999年) 年月日时分秒
YEAR(1字节,存储年份) 年
CREATE TABLE s1(姓名 CHAR(10),生日 DATE,出生年份 YEAR,家庭聚会 DATETIME,聚会地点 VARCHAR(10),上班时间 TIME
);
INSERT INTO s1 VALUES("秦尘",19991117,1999,20250514180000,"东门大桥",090000);
INSERT INTO s1 VALUES("林枫","2000-11-17","2000","2025-05-14 19:00:00","春熙路","10:00:00");
SELECT * from s1;
5.枚举: 表头的值必须在列举的值里选择
enum(“男”,“女”) 只能选一个
set(“吃”,“喝”,“玩”) 可以选多个
CREATE Table s2(id int,name CHAR(5),sex ENUM("男","女","人妖"),love SET("美杜莎","古薰儿","小医仙","云韵","纳兰嫣然")
);
INSERT INTO s2 VALUES(1,"萧炎","男","美杜莎,古薰儿");
INSERT INTO s2 VALUES(2,"萧萧","女","美杜莎");
INSERT INTO s2 VALUES(NULL,"萧萧","女","美杜莎");
SELECT * from s2;
desc s2;
show TABLES;
拷贝表
CREATE Table s3 select * from s2; 复制表头和数据
复制表头和数据
CREATE Table s3 select * from s2;
SELECT * from s3;
只复制表头不复制数据
CREATE TABLE s4 like s2; 只复制表头不复制数据
CREATE TABLE s4 like s2;
SELECT * from s4;
约束条件
给表添加特点的约束条件,只有满足该约束添加的操作才可以进行,否则数据库直接拒绝
约束种类
1)主键约束
2)非空约束
3)唯一约束
4)外键约束
5)检查约束
主键
主键: 主键字段的值用来唯一表示该表中的一条记录
主键必须是 非空 且 唯一
非空: 表中的每条记录都要有值
唯一: 表中的每条记录的值不可以重复
PRIMARY KEY
通常主键字段的名为ID
CREATE Table t3(id INT PRIMARY KEY,name VARCHAR(10),age INT(3)
);
-- 主键 PRIMARY KEY 非空 唯一
INSERT INTO t3 VALUES(1,"张三",18),(2,"李四",20);
INSERT INTO t3 VALUES(NULL,"王五",18); --主键不能插入空值, 也不能插入重复的id
-- INSERT INTO t3(name,age) VALUES("小医仙",18); 插入数据时不能忽略主键字段, 除非自增
-- UPDATE t3 set id=1 where name="李四"; 修改的时候,不可以把重复的值更新到主键上
-- UPDATE t3 SET id=NULL WHERE name="李四"; 修改的时候,不可以把NULL更新到主键上
SELECT * from t3;
自增
具有主键约束的字段都会为其添加自增,自增是数据库为字段生成值的一种机制
AUTO_INCREMENT 自增
id INT PRIMARY KEY AUTO_INCREMENT
CREATE Table t4(id INT PRIMARY KEY AUTO_INCREMENT,name VARCHAR(10),age INT(3)
);INSERT INTO t4(name,age) VALUES("萧炎",30);
INSERT INTO t4(name,age) VALUES("王林",25);SELECT * from t4;desc t4;desc t3;
-- 给已有的主键字段添加 自增
ALTER Table t3 CHANGE id id int AUTO_INCREMENT;
desc s2;
-- 给已有的字段添加 主键 和 自增
ALTER Table s2 CHANGE id id int PRIMARY KEY AUTO_INCREMENT;
非空约束
NOT NULL,当字段添加非空约束后,字段的值不能为NULL
一张表可以有多个字段为非空约束
CREATE TABLE t5(id int PRIMARY KEY AUTO_INCREMENT,name VARCHAR(10) NOT NULL,age INT(3)
);INSERT INTO t5 VALUES(1,"王林",28);
-- INSERT INTO t5(age) VALUES(30); 插入值的时候NULL 不能为空
INSERT INTO t5(name) VALUES("李倩梅");
INSERT INTO t5(name,年龄) VALUES("王林",35);desc t5;
SELECT * from t5;DELETE FROM t5 WHERE id=2; --删除id为2的数据
-- 在已经存在的表中添加非空约束
ALTER Table t5 CHANGE age age int(3) NOT NULL;
ALTER Table t5 CHANGE age 年龄 INT(3) NOT NULL; -- 修改字段名
唯一约束
UNIQUE 要求对应字段在整张表中的值是不可以重复的,一张表可以有多个字段添加唯一约束
CREATE Table t6(id int PRIMARY KEY AUTO_INCREMENT,name VARCHAR(10) UNIQUE,age INT(3) NOT NULL
);INSERT INTO t6(name,age) VALUES("萧炎",25);
-- UNIQUE 唯一约束 可以插入NULL值
INSERT INTO t6(name,age) VALUES(NULL,30);
-- NULL是不不存在的值,所以不存在重复的意思
INSERT INTO t6(name,age) VALUES(null,30);SELECT * from t6;
desc t6;
-- 修改字段不能为空 并且 唯一
ALTER Table t6 CHANGE name name VARCHAR(10) NOT NULL UNIQUE;
DELETE FROM t6 WHERE id>=3;
-- 若指定唯一约束时,会将非空约束取消
ALTER Table t6 CHANGE age age INT(3) UNIQUE;
检查约束
CHECK 该约束允许我们自定义约束条件,只有满足该条件的操作才可以进行
CREATE Table t7(id int PRIMARY KEY AUTO_INCREMENT,name VARCHAR(10),age int(3) CHECK(age>0 and age<110)
);
INSERT INTO t7 VALUES(1,"元瑶",101);
INSERT INTO t7 VALUES(2,"韩立",3);
INSERT INTO t7(age) VALUES(7);
INSERT INTO t7(age) VALUES(8);
INSERT INTO t7(age) VALUES(9);SELECT * from t7;
相关文章:
Linux云计算训练营笔记day08(MySQL数据库)
Linux云计算训练营笔记day08(MySQL数据库) 目录 Linux云计算训练营笔记day08(MySQL数据库)数据准备修改更新update删除delete数据类型1.整数类型2.浮点数类型(小数)3.字符类型4.日期5.枚举: 表头的值必须在列举的值里选择拷贝表复…...
从基础到实习项目:C++后端开发学习指南
在当今技术快速迭代的背景下,后端开发作为软件工程的核心支柱持续发挥着关键作用。C凭借其卓越的性能表现和系统级控制能力,依然是构建高性能后端服务的首选语言之一。本文将系统性地解析现代C后端开发的核心技术体系,包括从语言特性精要到架…...
jedis+redis pipeline诡异的链接损坏、数据读取异常问题解决
文章目录 问题现象栈溢出(不断的重连)读取超时未知响应尝试读取损坏的链接读取到的数据和自己要读的无关,导致空指针、类型转换错误,数据读取错乱 问题写法问题分析修复注意点 问题现象 栈溢出(不断的重连)…...
十、HQL:排序、联合与 CTE 高级查询
作者:IvanCodes 日期:2025年5月15日 专栏:Hive教程 Apache Hive 作为大数据领域主流的数据仓库解决方案,其查询语言 HQL (Hive Query Language) 是数据分析师和工程师日常工作的核心。除了基础的 SELECT-FROM-WHERE,HQ…...
数据结构—排序(斐波那契数列,冒泡,选择,插入,快速,归并,图,广度优先算法)
目录 一 斐波那契数列(递归算法) 定义 原理 二 冒泡排序 定义 排序思路 函数原型 参数详解: 算法分析: 1. 使用函数库的qsort函数 2. 自定义冒泡排序 三 选择排序 定义 排序思路 四 插入排序 定义 排序思路 五 快速…...
NetSuite CSV导入Item Fulfillment的功能测试
上一篇我们说过如何通过CSV导入更新IF上的Department/Class信息,这篇是来测试一下如果SO在Pending Fulfillment的状态下通过CSV导入IF,这个新版本的一个功能,刚好将测试的过程与结果与大家分享~ 准备文件 External ID是外部ID; …...
网络原理 | 网络基础概念复习
目录 网络中的重要概念 IP地址 端口号 协议 五元组 协议分层 OSI七层网络模型 TCP/IP 五层(四层)模型 网络设备所在的分层 封装和分用 网络中的重要概念 IP地址 IP地址主要用于标识网络主机、其他网络设备的网络地址。在网络数据传输中&#…...
Vsan数据恢复——Vsan上虚拟机不可用,虚拟机组件信息破坏的数据恢复
Vsan数据恢复环境: 一台采用VsSAN分布式文件系统的存储设备由于未知原因关机重启。管理员发现上层的虚拟机不可用,存储内的数据丢失。 Vsan数据恢复过程: 1、将故障存储设备断电,将存储内的硬盘编号后取出。硬件工程师检测后没有发…...
V837s-LAN8720A网口phy芯片调试
目录 前言 一、LAN8720A 芯片概述 二、硬件连接 三、设备树配置 四、内核配置 五、网口调试 总结 前言 在嵌入式系统开发中,网络连接是至关重要的一部分。v837s开发板搭载了LAN8720A系列的网口PHY芯片,用于实现以太网连接。在开发过程中,对于网口的稳定性和性能的调试至…...
C++(12):using声明
目录 一、定义 二、核心用法示例 示例 1:单独引入 std::string 和 std::coun 示例 2:在局部作用域中使用 using 声明 三、对比 using namespace std(不推荐) 四、关键注意事项 1. 名称冲突问题 2. 作用域规则 3. 头文件中的陷阱 五、最佳实践总结 六、完整安全示…...
Xinference 命令大全:从模型部署到管理
Xinference 是一个高性能、分布式的模型推理框架,支持多种大语言模型(LLM)、嵌入模型(Embedding)和图像生成模型。本文将详细介绍 Xinference 的常用命令,涵盖模型启动、管理、监控及 API 调用,帮助你快速掌握其核心功能。 1. 安装与启动 Xinference 1.1 安装 Xinferen…...
如何在线免费压缩PDF文档?
PDF文件太大,通常是因为内部嵌入字体和图片。怎么才能将文件大小减减肥呢,主要有降低图片清晰度和去除相关字体两个方向来实现文档效果。接下来介绍三个免费压缩PDF实用工具。 (一)iLoveOFD在线转换工具 iLoveOFD在线转换工具&a…...
在Rocky Linux 9.5上部署MongoDB 8.0.9:从安装到认证的完整指南
mongodb 的部署 #安装依赖 yum -y install libcurl openssl #安装mongodb yum -y install https://repo.mongodb.org/yum/redhat/9/mongodb-org/8.0/x86_64/RPMS/mongodb-org-server-8.0.9-1.el9.x86_64.rpm #启动服务 systemctl start mongod.service && system…...
Unix Bourne Shell
本文来源 : 腾讯元宝 Unix Bourne Shell(简称sh)是Unix系统中最经典的命令行解释器(shell),由Stephen Bourne于1977年在贝尔实验室开发,并成为后续众多shell(如bash、ksh等ÿ…...
如何在 AWS 上构建支持 AVIF 的前端图片优化方案
一、为什么使用 AVIF 图片格式? 优势点 说明 高压缩率 在相似质量下,AVIF 文件比 JPEG/PNG/WebP 更小,能有效节省带宽和存储空间。 更高画质 即使在低码率下也能保持清晰细节,减少压缩带来的马赛克或模糊问题。 支持透明度 …...
Linux系统进行环境开发环境配置
一. 使用fishros(鱼香肉丝)配置开发环境 对于初学者来说,最难的关卡莫非是开发环境的的搭建,特别是在Ubuntu系统上ROS系统安装时后出现的各种报错以及失败,本篇博客讲述了ROS系统的一键安装过程,适用于18.04及以后的Ubuntu系统版本…...
前端npm的核心作用与使用详解
一、npm是什么? npm(Node Package Manager) 是 Node.js 的默认包管理工具,也是全球最大的开源代码库生态系统。虽然它最初是为 Node.js 后端服务设计的,但如今在前端开发中已成为不可或缺的基础设施。通过npm,开发者可以轻松安装、管理和共享代码模块。 特性: 依赖管理…...
软考软件评测师——软件工程之系统维护
一、系统质量属性 可维护性 衡量软件系统适应修改的难易程度,包括修复缺陷、扩展功能或调整规模的效率。计算公式为:系统可用时间占比 1/(1平均修复时间),其中平均修复时间(MTTR)指排除故障所需的平均耗时。 可靠性 vs 可用性 可靠性&…...
CSRF攻击 + 观测iframe加载时间利用时间响应差异侧信道攻击 -- reelfreaks DefCamp 2024
参考: https://0x90r00t.com/2024/09/30/3708/ 题目信息 有些事情最好还是保持低调。当然,除非你是个真正的怪胎。 注意:该网站通过HTTPS提供服务 标志格式:DCTF{}题目实现了一个类似视频网站的东西 在其提供的数据库中…...
火山RTC 8 SDK集成进项目中
一、SDK 集成预备工作 1、SDK下载 https://www.volcengine.com/docs/6348/75707 2、解压后 3、放在自己项目中的位置 1)、include 2)、lib 3)、dll 暂时,只需要VolcEngineRTC.dll RTCFFmpeg.dll openh264-4.dll, 放在intLive2…...
spring boot Controller 和 RestController 的区别
spring boot Controller 和 RestController 的区别 5.3.1常用注解 Spring MVC控制器中常使用的注解有如下几种。 Controller Controller 标记在类上。使用Controller 标记的类表示是Spring MVC的Controller对象。分发处理器将会扫描使用了该注解的类,并检测其中的…...
mavgenerate 在 win11 下环境搭建注意问题
开发随笔 mavgenerate 是mavlink配套的协议生成工具,mavgenerate 在 win11 下环境搭建注意问题: 1、Python 就使用文件包当中的版本,由于python 版本能与 future 及 pip 之间存在特定的组合关系,故不推荐下载使用最新版本 2、安…...
SSM项目集成redis、Linux服务器安装redis
在SSM(Spring Spring MVC MyBatis)项目中引入Redis主要分为以下步骤,确保配置正确并能在业务中灵活使用: 1. 添加Redis依赖 在Maven的pom.xml中添加Spring Data Redis和Jedis(或Lettuce)依赖&#…...
sqli-labs靶场第七关——文件导出注入
一:目标 通过sql注入将php代码写入网站目录,通过这个php文件执行命令 二:确认前置条件 %secure_file_priv% 首先我们需要Mysql是否允许导出文件 先尝试在网页中sql注入,检查导出权限 ?id1)) union select 1,secure_file_pr…...
python使用matplotlib无法显示中文字体报错
python使用matplotlib字体报错 当我们使用python使用matplotlib总是出现报错,图片中文变成方框 findfont: Font family WenQuanYi Micro Hei not found. findfont: Font family Heiti TC not found. findfont: Font family [SimHei] not found. Falling back to De…...
VTEP是什么
VTEP(VXLAN Tunnel Endpoint,VXLAN 隧道端点)是 VXLAN(Virtual Extensible LAN)网络中的关键组件,用于处理 VXLAN 流量的封装和解封装。以下以可读的 Markdown 格式详细解释 VTEP 的定义、功能、实现方式以…...
React Native简介
React Native 是由 Meta(原 Facebook)开源的跨平台移动应用开发框架,基于 React 和 JavaScript,允许开发者使用同一套代码库构建 iOS 和 Android 原生应用。通过 JavaScript 调用原生组件实现高性能渲染。 跨平台开发 共享 80%-9…...
边缘计算模块
本文来源 :腾讯元宝 边缘计算模块是一种部署在网络边缘(靠近数据源)的集成化硬件/软件设备,用于实时处理本地数据,减少云端依赖,提升响应速度与安全性。以下是其核心要点: 1. 核心组成 …...
策略模式-枚举实现
策略模式的实现方法有很多,可以通过策略类if,else实现。下面是用枚举类实现策略模式的方法。 定义一个枚举类,枚举类有抽象方法,每个枚举都实现抽象方法。这个策略,实现方法是工具类的很实现,代码简单好理解 枚举实现…...
C++算法(22):二维数组参数传递,从内存模型到高效实践
引言 在C程序设计中,二维数组的参数传递是许多开发者面临的棘手问题。不同于一维数组的相对简单性,二维数组在内存结构、类型系统和参数传递机制上都存在独特特性。本文将深入探讨静态数组、动态数组以及STL容器三种实现方式,通过底层原理分…...
LeetCode LCR 015. 找到字符串中所有字母异位词 (Java)
LCR 015. 找到字符串中所有字母异位词 题目描述 给定两个字符串 s 和 p,要求找到 s 中所有是 p 的变位词(字母相同但排列不同)的子串,并返回这些子串的起始索引。例如: 输入 s "cbaebabacd", p "a…...
幼儿学前教育答辩词答辩技巧问题答辩自述稿
### 📘《幼儿园大班活动开展存在的问题及解决策略》📝 我的论文题目是《幼儿园大班活动开展存在的问题及解决策略》📖。我将从论文框架、研究内容、需要解决的问题、研究结论这四部分来阐述我的论文📝。 论文框架由绪论Ǵ…...
双目立体视觉
文章目录 1,前言2,原理3,组成部分3.1,数字图像采集。3.2 ,相机标定。3.3,图像预处理与特征提取。3.4 ,图像校正。3.5 ,立体匹配。3.6 ,三维重建。 4,主要的算…...
机器人弧焊二八混合气体节约
焊接技术在现代工业生产中作为关键环节之一,其效率和成本直接影响到整个制造流程的经济性与环保性。近年来,随着节能减排理念深入人心,各行业都在积极探索绿色制造方案。在焊接领域,二八混合气体的应用结合WGFACS智能流量调节系统…...
Linux进程通讯和原子性
在Linux系统中,进程间通信(IPC)和原子性是并发编程中的核心问题。以下是对这些概念的详细分步解释: 一、进程间通信(IPC)方法 1. 管道(Pipe) 匿名管道:用于父子进程等有…...
深度学习之用CelebA_Spoof数据集搭建一个活体检测-一些模型训练中的改动带来的改善
实验背景 在前面的深度学习之用CelebA_Spoof数据集搭建一个活体检测-模型搭建和训练,我们基于CelebA_Spoof数据集构建了一个用SqueezeNe框架进行训练的活体2D模型,采用了蒸馏法进行了一些简单的工作。在前面提供的训练参数中,主要用了以下几…...
Oracle APEX IR报表列宽调整
1. 问题:如何调整Oracle APEX IR报表列宽 1-1. 防止因标题长而数据短,导致标题行的文字都立起来了,不好看。 1-2. 防止因数据太长而且中间还没有空格,把列撑开的太宽也不换行,不好看。 2. 解决办法 针对如上问题解…...
6大核心记忆方法
以下是结合脑科学原理和高效学习策略总结的 6大核心记忆方法,帮助你摆脱“学完就忘”的困境: 一、间隔重复与分散学习 遵循艾宾浩斯遗忘曲线:学习后20分钟遗忘58%,1天后遗忘66%。通过设定复习节点(如学后1天、3天、1周…...
conda更换清华源
1、概览 anaconda更换速度更快、更稳定的下载源,在linux环境测试通过。 2、conda源查看 在修改之前可以查看下现有conda源是什么,查看conda配置信息,如下: cat ~/.condarc 可以看到你的conda源,以我的conda源举例&am…...
5月15日星期四今日早报简报微语报早读
5月15日星期四,农历四月十八,早报#微语早读。 1、中国至越南河内国际道路运输线路正式开通; 2、免签国1,中乌(兹别克斯坦)互免签证协定6月生效; 3、杭州“放大招”支持足球发展:足…...
网络损伤仪功能介绍与应用场景剖析
以下是关于 网络损伤仪(Network Impairment Emulator) 的核心功能介绍及其应用场景的详细说明: 一、网络损伤仪的核心功能 带宽限制(Bandwidth Throttling) 模拟不同网络带宽(如从1Mbps到10Gbps)…...
超时检测机制和心跳包机制(Heartbeat)
一、超时检测机制 1. I/O 函数超时设置 1.1 select/poll/epoll 的超时参数 select c struct timeval timeout {3, 0}; // 3秒超时 int n select(maxfd1, &readfds, NULL, NULL, &timeout); if (n 0) printf("select timeout\n"); // 超时无事件poll c …...
经典卷积神经网络
目录 经典卷积神经网络 一、卷积神经网络基础回顾 二、LeNet:开启 CNN 先河 三、AlexNet:突破性进展 四、ZFNet:继承与优化 五、GoogLeNet:引入 Inception 模块 六、VggNet:深度与简单结构的融合 七、ResNet&a…...
Reactor模型详解与C++实现
Reactor模型详解与C实现 一、Reactor模型核心思想 Reactor模式是一种事件驱动的并发处理模型,核心通过同步I/O多路复用实现对多个I/O源的监听,当有事件触发时,派发给对应处理器进行非阻塞处理。 关键特征: 非阻塞I/Oÿ…...
观测云产品更新 | 安全监测、事件中心、仪表板AI智能分析等
观测云更新 安全监测 新增 SIEM 功能模块:实时分析企业各类系统(如服务器、应用、网络设备)的日志和事件数据,自动发现潜在威胁,帮助团队迅速定位异常,充分发挥安全监控中枢的作用。 注意:目…...
【HTML】个人博客页面
目录 页面视图编辑 页面代码 解释: HTML (<body>): 使用了更加语义化的HTML5标签,例如<header>, <main>, <article>, <footer>。文章列表使用了<article>包裹,结构清晰。添加了分页导航。使用了Font…...
OrangePi Zero 3学习笔记(Android篇)10 - SPI和从设备
目录 1. 配置内核 2. 修改设备数 3. 修改权限 4. 验证 Zero 3的板子有2个SPI Master接口,其中SPI0接的是板载16MB大小的SPI Nor Flash,SPI1则是导出到26pin的接口上。 spi和i2c有点不同,spi是直接生成spi虚拟设备,所以在dev里…...
《Java 大视界——Java 大数据在智能电网分布式能源协同调度中的应用与挑战》
随着风电、光伏等分布式能源大规模接入电网,传统调度系统面临数据规模激增、响应延迟显著、多源异构数据融合困难等核心问题。本文聚焦Java生态下的大数据技术体系,深入探讨其在智能电网实时监测、负荷预测、资源优化配置等场景中的落地实践。通过分析Sp…...
基于正点原子探索者开发板的简易音乐播放器
1、概述 本次实验的名称叫做“基于正点原子探索者开发板的简易音乐播放器”。本实验的功能框图如下: 从图上我们可以清晰的看到本实验所需的实现的功能、以及每个功能需要怎么实现。 这次实验使用的是正点原子的探索者开发板,此开发板采用的MCU是STM32F4…...
【CF】Day59——Codeforces Round 914 (Div. 2) D
D. Set To Max 题目: Easy 思路: 简单题 由于题目的数据给的很小,所以我们可以用 n 的复杂度过,那我们来观察一下我们应该怎么操作 显然,如果 a[i] > b[i] 时是无法构造的,同时 a[i] b[i] 时就不用管…...