当前位置: 首页 > news >正文

MySQL:增删改查、临时表、授权相关示例

目录

概念

数据完整性

主键

数据类型

精确数字

近似数字

字符串

二进制字符串

日期和时间

MySQL常用语句示例

SQL结构化查询语言

显示所有数据库

显示所有表

查看指定表的结构

查询指定表的所有列

创建一个数据库

创建表和列

插入数据记录

查询数据记录

修改表中数据

在mysql内修改root用户登录mysql的密码

在终端修改mysql的root用户登录密码

克隆

删除

delete

truncate

临时表

授权

授权用户

授权远程用户

查看指定账户的授权

撤销指定账户授权

Windows通过Navicat连接MySQL服务器


概念

数据完整性

数据的正确性

  • 数据完整性
    • 每一行必须是唯一的实体(每个实体必须唯一)
  • 域完整性
    • 检查每一列是否有效
  • 引用完整性
    • 确保所有表中数据的一致性,不允许引用不存在的值
  • 用户定义的完整性
    • 指定特定的业务规则

主键

  • 用于唯一标识表中的行数据
  • 由一个或多个字段组成
  • 具有唯一性
  • 不允许取空值(NULL)
  • 一个表只能有一个主键

数据类型

精确数字

近似数字

字符串

二进制字符串

日期和时间


MySQL常用语句示例

结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言用于存取数据以及查询、更新和管理关系数据库系统。

SQL结构化查询语言

  • DDL数据定义语言
    • create
    • drop(针对数据库对象)
    • alter
  • DML数据操纵语言
    • insert
    • update
    • delete(针对表中的记录)
  • DQL数据查询语言
    • select
    • show
    • describe
  • DCL数据控制语言
    • grant
    • revoke
    • commit(事务)
    • rollback(回滚)

首先登录数据库,以便进行下一步实验

[root@localhost ~]# mysql -uroot -p
Enter password: 输入密码

显示所有数据库

在登录进数据库后,可以使用show databases;来列出所有数据库

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)
  • information_schema:数据库本身所需的信息(库、表信息)
  • mysql:程序运行时所需要的数据,主要是用户认证的信息

显示所有表

需要在数据库内输入show tables才能生效

进入mysql数据库
mysql> use mysql    # 不用加分号结尾
mysql> show tables;

查看指定表的结构

查看user表的结构

mysql> describe user;
+------------------------+-----------------------------------+------+-----+-----------------------+-------+
| Field                  | Type                              | Null | Key | Default               | Extra |
+------------------------+-----------------------------------+------+-----+-----------------------+-------+
| Host                   | char(60)                          | NO   | PRI |                       |       |
| User                   | char(32)                          | NO   | PRI |                       |       |
| Select_priv            | enum('N','Y')                     | NO   |     | N                     |      

查询指定表的所有列

这里使用select语句查询user表的所有列,\G表示以垂直方式显示,代替默认的水平方式,水平方式输出会看起来很杂乱

mysql> select * from user\G;

创建一个数据库

create 类型 名称

mysql> create database auth;
Query OK, 1 row affected (0.00 sec)
mysql> use auth;    # 更改当前操作的数据库为auth
Database changed

创建表和列

使用create语句创建名为users表并添加两列数据

DEFAULT ' ':该列默认为空(这里表示密码默认为空)

创建完后,可以使用show tables;查看该表

mysql> create table users (user_name char(16) not null, user_passwd char(48) default '', primary key(user_name));
Query OK, 0 rows affected (0.00 sec)
mysql> show tables;
+----------------+
| Tables_in_auth |
+----------------+
| users          |
+----------------+

插入数据记录

在users表的指定列中插入信息

insert语法:insert into 表名 (列名1, 列名2) values (值1, 值2);

mysql>use auth;
mysql>insert into users(user_name, user_passwd) values ('tom', '123456')
mysql>insert into users(user_name, user_passwd) values ('jerry', '654321');

查询数据记录

查询users表中所有列,以及添加where过滤指定列的所有信息

mysql> select * from auth.users;
+-----------+-------------+
| user_name | user_passwd |
+-----------+-------------+
| jerry     | 654321      |
| tom       | 123456      |
+-----------+-------------+mysql> select user_name, user_passwd from auth.users where user_name='tom';
+-----------+-------------+
| user_name | user_passwd |
+-----------+-------------+
| tom       | 123456      |
+-----------+-------------+

修改表中数据

修改auth数据库中users表中的user_name为tom的行中的user_passwd列的值为000,并且使用加密算法加密该值

然后使用select语句查询,可以看到user_passwd列的值被加密了

mysql> update auth.users set user_passwd=password('000') where user_name='tom';
mysql> select * from auth.users;
+-----------+-------------------------------------------+
| user_name | user_passwd                               |
+-----------+-------------------------------------------+
| jerry     | 654321                                    |
| tom       | *B66FEB4CF5216D971C066EB920EC03B27A5A3F40 |
+-----------+-------------------------------------------+
在mysql内修改root用户登录mysql的密码

更新mysql库下user表中的authentication_string列,调用password对密码进行加密,where条件为root用户

使用flush privileges;命令重新加载授权表,使当前对授权的更改生效,而无需重新启动MySQL服务。

mysql> update mysql.user set authentication_string=password('123456') where user='root';
mysql> flush privileges;
[root@localhost ~]# mysql -uroot -p
Enter password: 输入刚才设置的密码
mysql>
成功登录
在终端修改mysql的root用户登录密码
[root@localhost ~]# mysqladmin -uroot -p123456 password 'pwd123'
[root@localhost data]# mysql -uroot -p
Enter password: 输入密码
mysql>

克隆

利用users表克隆一个名为user01的表,但是克隆后的新表是没有内容的

mysql> create table user01 like auth.users;mysql> show tables;
+----------------+
| Tables_in_auth |
+----------------+
| user01         |
| users          |
+----------------+

将users表的内容全部插入到user01新表中

mysql> insert into user01 select * from auth.users;mysql> select * from user01;
+-----------+-------------+
| user_name | user_passwd |
+-----------+-------------+
| tom       | 123456      |
+-----------+-------------+

删除

delete

使用delete from 表名 where 列名来删除指定行

如果不在结尾加where,是删除指定的表。可以自由搭配

mysql> delete from auth.users where user_name='jerry';mysql> select * from auth.users;
+-----------+-------------------------------------------+
| user_name | user_passwd                               |
+-----------+-------------------------------------------+
| tom       | *B66FEB4CF5216D971C066EB920EC03B27A5A3F40 |
+-----------+-------------------------------------------+

truncate

mysql> truncate table user01;mysql> select * from user01;
Empty set (0.00 sec)
  • truncate table 表名;
    • 功能:truncate table用于快速且高效地删除表中的所有数据,但保留表的结构(即表定义)。
    • 操作:它是一个DDL(数据定义语言)命令,不是一个事务,并且不能通过回滚来恢复删除的数据。
    • 速度:由于不记录删除的每一行数据,而是直接释放数据页,因此truncate table操作通常比delete from更快。
  • delete from 表名;
    • 功能:delete from用于从表中删除指定的行数据。
    • 操作:它是一个DML(数据操作语言)命令,它可以作为一个事务来执行,并且可以通过事务回滚来撤销删除操作。
    • 记录:delete from操作会将每一行删除操作的记录写入事务日志,并且在执行时会触发触发器(如果有的话)。
  • 延续id的区别
    • 如果使用delete清除一个表后,添加新内容的id会延续之前的id。
    • 而使用truncate清除一个表后,添加新内容的id会还原,从1开始。

临时表

临时表用于临时存放一些数据,如果退出mysql管理系统,再进来就找不到在临时表中存储的数据了

mysql> create temporary table test(id int(10) not null auto_increment, name char(116) character set utf8 collate utf8_bin not null primary key (id));
mysql> insert into test (name) values ('tom');
mysql> select * from test;
+----+------+
| id | name |
+----+------+
|  1 | tom  |
+----+------+

退出后,再进入。找不到test临时表

mysql> quit[root@localhost data]# mysql -uroot -p
Enter password: 输入密码mysql> select * from test;
ERROR 1046 (3D000): No database selected

授权

授权是一组权限的集合,比如授权select命令给某个用户,这里select就是一个角色,只是这个角色的名称叫select

权限是单个的,但是授权这个操作是将一组权限的集合分配给用户

比如使用 grant select on 库名.表名 to '用户名'@'localhost'; 是授予指定用户可以在指定数据库中的指定表中执行select的权限

授权用户

指定tom用户在本机只能使用select语句查询访问auth库中的所有表

mysql> grant select on auth.* to 'tom'@'localhost' identified by '123456';

这里的localhost表示授权本机

根据需求和实际情况也可以写成IP地址或网段,网段的格式在主机部分要写成%(192.168.10.%)或允许所有主机('root'@'%'

此时查询mysql库中的user表可以看到刚刚授权的tom用户的授权信息被生成出来了,此时退出mysql

mysql> select * from mysql.user\G;
*************************** 4. row ***************************Host: localhost    # 允许该用户在什么地方登录User: tom    # 账号名# 省略部分信息plugin: mysql_native_password    # 当你对该用户设置密码时,利用该插件对密码进行加密authentication_string: *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9    # 加密过的密码password_expired: Npassword_last_changed: 2024-07-23 22:02:46password_lifetime: NULLaccount_locked: Nmysql> exit

在终端使用tom账户也可以登录了

再使用select语句查询授权过的auth库内的表,可以查询

如果查询别的库的信息,就不行了

[root@localhost ~]# mysql -utom -p123456
mysql>
mysql> select * from auth.users;
+-----------+-------------------------------------------+
| user_name | user_passwd                               |
+-----------+-------------------------------------------+
| tom       | *B66FEB4CF5216D971C066EB920EC03B27A5A3F40 |
+-----------+-------------------------------------------+
1 row in set (0.00 sec)mysql> select * from mysql.user;
ERROR 1142 (42000): SELECT command denied to user 'tom'@'localhost' for table 'user'

授权远程用户

指定授权任何主机(%)都可以使用root用户登录mysql,并且拥有所有库的所有表的访问权限

这里的123456密码,是远程主机登录的密码,而不是本地主机登录的密码

mysql> grant all on *.* to root@'%' identified by '123456';
mysql> flush privileges;

在102主机安装MySQL客户端

[root@localhost ~]# yum -y install mysql
[root@localhost ~]# mysql -uroot -p123456 -h 192.168.10.101 -P 3306
MySQL [(none)]>

查看指定账户的授权

使用show命令查看指定账户的权限

mysql> show grants for 'tom'@'localhost';
+-----------------------------------------------+
| Grants for tom@localhost                      |
+-----------------------------------------------+
| GRANT USAGE ON *.* TO 'tom'@'localhost'       |
| GRANT SELECT ON `auth`.* TO 'tom'@'localhost' |
+-----------------------------------------------+

撤销指定账户授权

首先确保是有mysql管理权的用户登录mysql,比如root

如果完成了上方的操作,要执行这里的命令记得exit退出,换成root用户登录进mysql

这里使用revoke语句从'tom'@'localhost'用户上撤销在auth数据库下所有表的所有权限

revoke的语法: revoke 权限 on 库名.表名 from '用户名'@'地址'; 

这里的权限就是你授权的权限,比如select、insert、update、delete等

[root@localhost ~]# mysql -uroot -p
Enter password: 输入密码
mysql> revoke all on auth.* from 'tom'@'localhost';

Windows通过Navicat连接MySQL服务器

前提是授权时将地址设为指定IP或%

在计算机管理开启MySQL服务

软件内左上角连接 ——》MySQL

主机IP填为MySQL服务器的IP,密码填为在MySQL服务器设置的

然后可以在左边列表看到连接的MySQL服务器

相关文章:

MySQL:增删改查、临时表、授权相关示例

目录 概念 数据完整性 主键 数据类型 精确数字 近似数字 字符串 二进制字符串 日期和时间 MySQL常用语句示例 SQL结构化查询语言 显示所有数据库 显示所有表 查看指定表的结构 查询指定表的所有列 创建一个数据库 创建表和列 插入数据记录 查询数据记录 修…...

初识git工具~~上传代码到gitee仓库的方法

目录 1.背景~~其安装 2.gitee介绍 2.1新建仓库 2.2进行相关配置 3.拉取仓库 4.服务器操作 4.1克隆操作 4.2查看本地仓库 4.3代码拖到本地仓库 4.4关于git三板斧介绍 4.4.1add操作 4.4.2commit操作 4.4.3push操作 5.一些其他说明 5.1.ignore说明 5.2git log命令 …...

Redis知识点总价

1 redis的数据结构 2 redis的线程模型 1) Redis 采用单线程为什么还这么快 之所以 Redis 采用单线程(网络 I/O 和执行命令)那么快,有如下几个原因: Redis 的大部分操作都在内存中完成,并且采用了高效的…...

大语言模型-GPT-Generative Pre-Training

一、背景信息: GPT是2018 年 6 月由OpenAI 提出的预训练语言模型。 GPT可以应用于复杂的NLP任务中,例如文章生成,代码生成,机器翻译,问答对话等。 GPT也采用两阶段的训练过程,第一阶段是无监督的方式来预训…...

mybatis批量插入、mybatis-plus批量插入、mybatis实现insertList、mybatis自定义实现批量插入

文章目录 一、mybatis新增批量插入1.1、引入依赖1.2、自定义通用批量插入Mapper1.3、把通用方法注册到mybatisplus注入器中1.4、实现InsertList类1.5、需要批量插入的dao层继承批量插入Mapper 二、可能遇到的问题2.1、Invalid bound statement 众所周知,mybatisplus…...

Springboot项目的行为验证码AJ-Captcha(源码解读)

目录 前言1. 复用验证码2. 源码解读2.1 先走DefaultCaptchaServiceImpl类2.2 核心ClickWordCaptchaServiceImpl类 3. 具体使用 前言 对于Java的基本知识推荐阅读: java框架 零基础从入门到精通的学习路线 附开源项目面经等(超全)【Java项目…...

【初阶数据结构篇】时间(空间)复杂度

文章目录 算法复杂度时间复杂度1. 定义2. 表示方法3. 常见时间复杂度4.案例计算分析冒泡排序二分查找斐波那契数列(递归法)斐波那契数列(迭代法) 空间复杂度案例分析冒泡排序斐波那契数列(递归法)斐波那契数…...

C# 设计模式分类

栏目总目录 1. 创建型模式(Creational Patterns) 创建型模式主要关注对象的创建过程,包括如何实例化对象,并隐藏实例化的细节。 单例模式(Singleton):确保一个类只有一个实例,并提…...

前端模块化CommonJS、AMD、CMD、ES6

在前端开发中,模块化是一种重要的代码组织方式,它有助于将复杂的代码拆分成可管理的小块,提高代码的可维护性和可重用性。CommonJS、AMD(异步模块定义)和CMD(通用模块定义)是三种不同的模块规范…...

论文阅读:(DETR)End-to-End Object Detection with Transformers

论文阅读:(DETR)End-to-End Object Detection with Transformers 参考解读: 论文翻译:End-to-End Object Detection with Transformers(DETR)[已完结] - 怪盗kid的文章 - 知乎 指示函数&…...

react中路由跳转以及路由传参

一、路由跳转 1.安装插件 npm install react-router-dom 2.路由配置 路由配置:react中简单的配置路由-CSDN博客 3.实现代码 // src/page/index/index.js// 引入 import { Link, useNavigate } from "react-router-dom";function IndexPage() {const …...

C++ STL set_symmetric_difference

一&#xff1a;功能 给定两个集合A&#xff0c;B&#xff1b;求出两个集合的对称差&#xff08;只属于其中一个集合&#xff0c;而不属于另一个集合的元素&#xff09;&#xff0c;即去除那些同时在A&#xff0c;B中出现的元素。 二&#xff1a;用法 #include <vector>…...

postman请求响应加解密

部分接口&#xff0c;需要请求加密后&#xff0c;在发动到后端。同时后端返回的响应内容&#xff0c;也是经过了加密。此时&#xff0c;我们先和开发获取到对应的【密钥】&#xff0c;然后在postman的预执行、后执行加入js脚本对明文请求进行加密&#xff0c;然后在发送请求&am…...

数据集,批量更新分类数值OR批量删除分类行数据

数据集批量更新分类OR删除分类行数据 import osdef remove_class_from_file(file_path, class_to_remove):"""从YOLO格式的标注文件中删除指定类别的行记录&#xff0c;并去除空行。:param file_path: YOLO标注文件路径:param class_to_remove: 需要删除的类别…...

一款功能强大的视频编辑软件会声会影2023

会声会影2023是一款功能强大的视频编辑软件&#xff0c;由加拿大Corel公司制作&#xff0c;正版英文名称为‌Corel VideoStudio。它具备图像抓取和编修功能&#xff0c;可以处理和转换多种视频格式&#xff0c;如‌MV、‌DV、‌V8、‌TV和实时记录抓取画面文件。会声会影提供了…...

政安晨【零基础玩转各类开源AI项目】基于Ubuntu系统部署LivePortrait :通过缝合和重定向控制实现高效的肖像动画制作

目录 项目论文介绍 论文中实际开展的工作 非扩散性的肖像动画 基于扩散的肖像动画 方法论 基于Ubuntu的部署实践开始 1. 克隆代码并准备环境 2. 下载预训练权重 3. 推理 快速上手 驱动视频自动裁剪 运动模板制作 4. Gradio 界面 5. 推理速度评估 社区资源 政安…...

在Spring项目中使用Maven和BCrypt来实现修改密码功能

简介 在数字时代&#xff0c;信息安全的重要性不言而喻&#xff0c;尤其当涉及到个人隐私和账户安全时。每天&#xff0c;无数的用户登录各种在线服务&#xff0c;从社交媒体到银行账户&#xff0c;再到电子邮件和云存储服务。这些服务的背后&#xff0c;是复杂的系统架构&am…...

RedHat8安装Oracle19C

RedHat8安装Oracle19C 1、 更新yum源 更新yum源为阿里云镜像源&#xff1a; # 进入源目录 cd /etc/yum.repos.d/ # 删除 redhat 默认源 rm redhat.repo # 下载阿里云的centos7源 curl -O http://mirrors.aliyun.com/repo/Centos-8.repo # 替换 Centos-8.repo 中的 $releasev…...

React系列面试题

大家好&#xff0c;我是有用就点赞&#xff0c;有用就扩散。 1.React的组件间通信都有哪些形式&#xff1f; 父传子&#xff1a;在React中&#xff0c;父组件调用子组件时可以将要传递给子组件的数据添加在子组件的属性中&#xff0c;在子组件中通过props属性进行接收。这个就…...

C#:通用方法总结—第6集

大家好&#xff0c;今天继续介绍我们的通用方法系列。 下面是今天要介绍的通用方法&#xff1a; &#xff08;1&#xff09;这个通用方法为SW查找草图数量 /// <summary> /// 查找草图数量 /// </summary> /// <param name"doc2"></param>…...

Spark实时(一):StructuredStreaming 介绍

文章目录 Structured Streaming 介绍 一、SparkStreaming实时数据处理痛点 1、复杂的编程模式 2、SparkStreaming处理实时数据只支持Processing Time 3、微批处理,延迟高 4、精准消费一次问题 二、StructuredStreaming架构与场景应用 三、​​​​​​​​​​​​​​…...

LangChain4j-RAG基础

RAG是什么 简而言之&#xff0c;RAG 是一种在将数据发送到 LLM 之前从数据中查找相关信息并将其注入到提示中的方法。这样LLM将获得&#xff08;希望&#xff09;相关信息&#xff0c;并能够使用这些信息进行回复&#xff0c;这应该会减少产生幻觉的可能性。 实现方法: 全文…...

git--本地仓库修改同步到远程仓库

尝试将本地分支推送到远程仓库时&#xff0c;出现一个非快速前进的错误。通常是因为远程仓库中的分支包含本地分支没有的提交。在推送之前&#xff0c;需要将远程仓库的更改合并到本地分支。 解决步骤如下&#xff1a; 切换到你的本地分支&#xff1a; 确保处于想要推送的分支…...

剑和沙盒 3 - 深度使用和解析Windows Sandbox

介绍 两年前&#xff0c;微软作为Insiders build 18305的一部分发布了一项新功能- Windows Sandbox。 该沙箱具有一些有用的规格&#xff1a; Windows 10&#xff08;Pro/Enterprise&#xff09;的集成部分。在 Hyper-V 虚拟化上运行。原始且可抛弃 – 每次运行时都干净地开…...

深度学习loss

pytorch模型训练demo代码 在PyTorch中&#xff0c;模型训练通常涉及几个关键步骤&#xff1a;定义模型、定义损失函数、选择优化器、准备数据加载器、编写训练循环。以下是一个简单的PyTorch模型训练演示代码&#xff0c;该代码实现了一个用于手写数字识别&#xff08;使用MNIS…...

编写一个Chrome插件,网页选择文字后,右键出现菜单“search with bing”,选择菜单后用bing搜索文字

kimi ai 生成&#xff0c;测试可用&#xff0c;需要自行准备图标文件 创建一个简单的Chrome插件来实现选择文本后的搜索功能&#xff0c;你需要完成以下几个步骤&#xff1a; 创建插件的基础文件夹和文件&#xff1a; 创建一个文件夹用于存放插件的所有文件。在该文件夹中创建以…...

【算法】分割回文串

难度:中等 题目: 给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是 回文串。返回 s 所有可能的分割方案。 示例 1: 输入:s = “aab” 输出:[[“a”,“a”,“b”],[“aa”,“b”]] 示例 2: 输入:s = “a” 输出:[[“a”]] 提示: 1 <= s.length <…...

lua 游戏架构 之 游戏 AI (三)ai_attack

这段Lua脚本定义了一个名为 ai_attack 的类&#xff0c;继承自 ai_base 类。 lua 游戏架构 之 游戏 AI &#xff08;一&#xff09;ai_base-CSDN博客文章浏览阅读119次。定义了一套接口和属性&#xff0c;可以基于这个基础类派生出具有特定行为的AI组件。例如&#xff0c;可以…...

大数据之Oracle同步Doris数据不一致问题

数据同步架构如下&#xff1a; 出现的问题&#xff1a; doris中的数据条数 源库中的数据条数 总数完全不一致。 出现问题的原因&#xff1a; 在Dinky中建立表结构时&#xff0c;缺少对主键属性的限制 primary key(ID) not enforced 加上如上语句&#xff0c;数据条数解决一致 …...

visual studio 问题总结

一. Visual Studio: 使用简体中文&#xff08;GB2312&#xff09;编码加载文件, 有些字节已用Unicode替换字符更换 解决方法&#xff1a;vs 工具-》选项-》文本编辑器...

go-错误码的最佳实践

一、背景 在工程开发中&#xff0c;我们有以下场景可以用错误码解决 我们不太方便直接将内部的错误原因暴露给外部&#xff0c;可以根据错误码得到对应的外部暴露消息通过设定错误码判断是客户端或者服务端的问题&#xff0c;避免不必要的排障浪费方便查找日志&#xff0c;定…...

Python面试题:使用Matplotlib和Seaborn进行数据可视化

使用Matplotlib和Seaborn进行数据可视化是数据分析中非常重要的一部分。以下示例展示了如何使用这两个库来创建各种图表&#xff0c;包括基本的线图、柱状图、散点图和高级的分类数据可视化图表。 安装 Matplotlib 和 Seaborn 如果你还没有安装这两个库&#xff0c;可以使用以…...

模拟实现c++中的vector模版

目录 一vector简述&#xff1a; 二vector的一些接口函数&#xff1a; 1初始化&#xff1a; 2.vector增长&#xff1a; 3vector增删查改&#xff1a; 三vector模拟实现部分主要函数&#xff1a; 1.size,capacity,empty,clear接口&#xff1a; 2.reverse的实现&#xff1…...

uniapp安卓通过绝对路径获取文件

uniapp安卓通过绝对路径获取文件 在uniapp中&#xff0c;如果你想要访问安卓设备上的文件&#xff0c;你需要使用uniapp提供的plus.io API。这个API允许你在应用内访问设备的文件系统。 以下是一个示例代码&#xff0c;展示了如何使用plus.io API来获取文件&#xff1a; fun…...

Known框架实战演练——进销存业务单据

本文介绍如何实现进销存管理系统的业务单据模块&#xff0c;业务单据模块包括采购进货单、采购退货单、销售出货单、销售退货单4个菜单页面。由于进销单据字段大同小异&#xff0c;因此设计共用一个页面组件类。 项目代码&#xff1a;JxcLite开源地址&#xff1a; https://git…...

解决npm依赖树冲突的方法以及npm ERR! code ERESOLVE错误的解决方案

一、问题描述 在使用ng new myapp --skip-install 构建Angular 项目后&#xff0c;尝试用npm install 安装依赖的时候报了以下错误。 (base) PS C:\Users\Administrator\Desktop\agtest\myapp> npm i npm ERR! code ERESOLVE npm ERR! ERESOLVE unable to resolve dependenc…...

Spring Boot + Spring Batch + Quartz 整合定时批量任务

​ 博客主页: 南来_北往 系列专栏&#xff1a;Spring Boot实战 前言 最近一周&#xff0c;被借调到其他部门&#xff0c;赶一个紧急需求&#xff0c;需求内容如下&#xff1a; PC网页触发一条设备升级记录&#xff08;下图&#xff09;&#xff0c;后台要定时批量设备更…...

C++STL简介(二)

目录 1.模拟实现string 1.string基本属性和大体框架 2.基本函数 2.1size&#xff08;&#xff09; 2.2 [] 2.3 begin() 和end() 2.4capacity&#xff08;&#xff09; 2.5 reserve 2.6push_back 2.7 append 2.8 2.9insert 2.10find 2.11substr 2.12 2.12 < …...

嵌入式高频面试题100道及参考答案(3万字长文)

目录 解释嵌入式系统的定义和主要特点 描述微处理器与微控制器的主要区别 什么是ARM体系结构?它在嵌入式系统中有哪些优势? 解释GPIO(通用输入输出)的工作原理 什么是ADC和DAC?它们在嵌入式系统中的作用是什么? 解释中断的概念及其在实时系统中的重要性 描述SPI(串…...

python爬虫-事件触发机制

今天想爬取一些政策&#xff0c;从政策服务 (smejs.cn) 这个网址爬取&#xff0c;html源码找不到链接地址&#xff0c;通过浏览器的开发者工具&#xff0c;点击以下红框 分析预览可知想要的链接地址的id有了&#xff0c;进行地址拼接就行 点击标头可以看到请求后端服务器的api地…...

LeetCode-day27-3106. 满足距离约束且字典序最小的字符串

LeetCode-day27-3106. 满足距离约束且字典序最小的字符串 题目描述示例示例1&#xff1a;示例2&#xff1a;示例3&#xff1a; 思路代码 题目描述 给你一个字符串 s 和一个整数 k 。 定义函数 distance(s1, s2) &#xff0c;用于衡量两个长度为 n 的字符串 s1 和 s2 之间的距…...

C++中的static_cast函数

static_cast 是 C 中的一个类型转换操作符&#xff0c;用于在编译时进行类型转换。它主要用于基本数据类型之间的转换&#xff0c;以及类的指针或引用之间的向上转换&#xff08;将派生类指针或引用转换为基类指针或引用&#xff09;和某些情况下的向下转换&#xff08;将基类指…...

从零开始学习网络安全渗透测试之基础入门篇——(二)Web架构前后端分离站Docker容器站OSS存储负载均衡CDN加速反向代理WAF防护

Web架构 Web架构是指构建和管理Web应用程序的方法和模式。随着技术的发展&#xff0c;Web架构也在不断演进。当前&#xff0c;最常用的Web架构包括以下几种&#xff1a; 单页面应用&#xff08;SPA&#xff09;&#xff1a; 特点&#xff1a;所有用户界面逻辑和数据处理都包含…...

2679. 矩阵中的和

两种方法&#xff1a; 第一种&#xff1a;先对二维列表的每一列进行排序&#xff0c;然后对每一列的数据进行逐个比较&#xff0c;找出最大值。 class Solution:def matrixSum(self, nums: list[list[int]]) -> int:result0mlen(nums)nlen(nums[0])for i in range(m):nums…...

Unity Playables:下一代动画与音频序列

Unity的Playables API是一种灵活的系统&#xff0c;用于创建和控制动画、音频以及其他形式的连续媒体序列。它为开发者提供了一种全新的方法来处理游戏中的时间序列&#xff0c;包括动画、音频、特效等。本文将探讨Playables的基本概念、如何使用Playables API实现动画&#xf…...

matlab仿真 模拟调制(下)

&#xff08;内容源自详解MATLAB&#xff0f;SIMULINK 通信系统建模与仿真 刘学勇编著第五章内容&#xff0c;有兴趣的读者请阅读原书&#xff09; clear all ts0.001; t0:ts:10-ts; fs1/ts; dffs/length(t); msgrandi([-3 3],100,1); msg1msg*ones(1,fs/10); msg2reshape(ms…...

RabbitMQ是什么?

RabbitMQ是一个开源的消息代理软件&#xff08;Message Broker&#xff09;&#xff0c;它实现了高级消息队列协议&#xff08;AMQP&#xff0c;Advanced Message Queuing Protocol&#xff09;&#xff0c;并支持多种消息传递协议。它最初由英国的Rabbit Technologies开发&…...

追问试面试系列:分布式id

hi 大家好,欢迎来到追问试面试系列:分布式id 面试中可能面试官不会直接问你分布式id问题,基本上都是因为你在某些面试题回答中提到了,所以就开始追问分布式id相关问题。 先看面试题 ● 面试官:什么是分布式id? ● 面试官:举个例子说说 ● 面试官:什么叫分库分表? ●…...

护网紧急情况应对指南:Linux 应急响应手册

继上一篇&#xff1a;护网紧急情况应对指南&#xff1a;Windows版v1.2全新升级版 之后 收到小伙伴后台要Linux应急手册&#xff0c;今天给大家安排上。 《Linux应急手册》是一本为Linux系统管理员和运维工程师量身打造的实用指南&#xff0c;旨在帮助他们快速应对各种突发状况…...

WEB攻防-通用漏洞-SQL 读写注入-MYSQLMSSQLPostgreSQL

什么是高权限注入 高权限注入指的是攻击者通过SQL注入漏洞&#xff0c;利用具有高级权限的数据库账户&#xff08;如MYSQL的root用户、MSSQL的sa用户、PostgreSQL的dba用户&#xff09;执行恶意SQL语句。这些高级权限账户能够访问和修改数据库中的所有数据&#xff0c;甚至执行…...