操作MySQL数据库
【一】针对库的增删查改(文件夹)
【1】创建数据库
(1)语法
-
创建一个存储数据表的文件夹。
-
注意:mysql中的编码字符集中utf-8,要换成utf8mb4。SQL语句中的中括号部分表示可选。
create database [if not exists] 数据库名 [character set 编码字符集];
(2)示例
mysql> create database my_one; Query OK, 1 row affected (0.00 sec)
【2】查看数据库
(1)语法
show databases; -- 查看所有数据库 show databases like '%test%'; -- 查看名字中包含test的数据库 show create database 数据库名; -- 查看数据库的建库sql语句
(2)示例
# 查看所有库 mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | my_one | | mysql | | performance_schema | | sys | +--------------------+ 5 rows in set (0.01 sec) # 查看指定库 mysql> show create database my_one; +----------+--------------------------------------------------------------------+ | Database | Create Database | +----------+--------------------------------------------------------------------+ | my_one | CREATE DATABASE `my_one` /*!40100 DEFAULT CHARACTER SET utf8mb4 */ | +----------+--------------------------------------------------------------------+ 1 row in set (0.00 sec)
【3】修改数据库
(1)语法
alter database 数据库名 [character set 编码字符集];
(2)示例
mysql> alter database my_one charset='utf8'; Query OK, 1 row affected (0.00 sec)
【4】删库
(1)语法
drop database [if exists] 数据库名;
(2)示例
mysql> drop database my_one; Query OK, 0 rows affected (0.01 sec)
【二】针对表的增删改查(文件)
在操作表的时候要指定所在的库
【1】查看当前所在库的名字
(1)语法
select database(); -- 查看当前使用的数据库
(2)示例
mysql> select database(); +------------+ | database() | +------------+ | NULL | +------------+ 1 row in set (0.00 sec)
【2】切换到指定库
(1)语法
use 数据库名; -- 切换数据库
(2)示例
-
切换数据库 注意:进入到某个数据库后没办法再退回之前状态,但可以通过use进行切换
mysql> use my_one Database changed
【3】创建表
-
数据表就相当于文件,文件有文件名,自然地,数据表也要有表名。
-
同样道理,数据表中的一条记录就相当于文件的一行内容。
-
只是不同的是,数据表需要定义表头(上图中的首行),称为表的字段名。
-
而且因为数据库的存储数据更加科学、严谨,所以需要创建表时要给每一个字段设置数据类型以及字段约束(完整性约束条件)。
(1)语法
create table [if not exists] 表名 (字段名1 数据类型[ ( 存储空间 ) 字段约束 ],字段名2 数据类型[ ( 存储空间 ) 字段约束 ],字段名3 数据类型[ ( 存储空间 ) 字段约束 ],.....字段名n 数据类型[ ( 存储空间 ) 字段约束 ],primary key(一个 或 多个 字段名) -- 注意,最后一段定义语句,不能有英文逗号的出现,否则报错。 ) [engine = 存储引擎 character set 字符集];
-
注意:
-
-
上面SQL语句中,小括号中的定义字段语句后面必须以英文逗号结尾,而最后一个字段的定义语句不能有英文逗号出现,否则报错。
-
在同一张数据表中,字段名是不能相同,否则报错!
-
创建数据表的SQL语句中,存储空间和字段约束是选填的,而字段名和数据类型则是必须填写的。
-
(2)示例
-
创建表指定字段
-- mysql中创建数据表要以 create table `表名` -- 表的字段信息必须写在 ( ) 小括号里面 create table classes (-- 建议一行一个字段,id 就是字段名-- int 表示设置字段值要以整数的格式保存到硬盘中,-- auto_increment表示当前字段值在每次新增数据时自动+1作为值保存-- primary key,mysql中叫主键,表示用于区分一个数据表中不同行的数据的唯一性,同时还具备加快查询速度的作用-- 注意:auto_increment与primary key 一般是配合使用的,对应的字段名一般也叫id,而且在一个数据表中只有一个字段能使用auto_increment primary key进行设置。id int auto_increment primary key,-- 字段名:name-- varchar(10) 表示当前name这一列可以存储的数据是字符串格式,并且最多只能存10个字符name varchar(10),-- 字段名:address-- varchar(100) 表示adderss这一列可以存储的数据是字符串格式,并且最多只能存100个字符address varchar(100),-- 字段名:total-- int 表示当前total这一列的数据只能是整数,而且一个数据表中,整数的最大范围只能是42亿total int );
-
上面的SQL语句就相当于创建了一个表格
id | name | address | total |
---|---|---|---|
【4】查看当前库下面的所有表
(1)查看所有的表
-
列出当前数据库中所有的数据表
# 语法 show tables;
# 示例 mysql> show tables; +------------------+ | Tables_in_my_one | +------------------+ | classes | | courses | | student | +------------------+ 3 rows in set (0.00 sec)
(2)查看指定的表
# 语法 show create table 表名;
# 示例 mysql> show create table student; +---------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Table | Create Table| +---------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | student | CREATE TABLE `student` (`id` int(11) NOT NULL AUTO_INCREMENT,`name` varchar(10) DEFAULT NULL,`sex` int(11) DEFAULT '1',`classes` int(11) DEFAULT NULL,`age` int(11) DEFAULT NULL,`description` text,PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 | +---------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
(3)查看当前表的详细信息
-
以表格形式列出当前数据表的结构信息
# 语法 describe 表名; desc 表名;
mysql> desc student; +-------------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------------+-------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | name | varchar(10) | YES | | NULL | | | sex | int(11) | YES | | 1 | | | classes | int(11) | YES | | NULL | | | age | int(11) | YES | | NULL | | | description | text | YES | | NULL | | +-------------+-------------+------+-----+---------+----------------+ 6 rows in set (0.00 sec)
(4)查看建表语句
show create table 表名 \G;
【5】修改表
(1)修改表的字段类型
-
modify(只能改类型不能改名字)
# 语法 alter table 表名 modify 字段名 字段类型(宽度);# 示例 # 修改之前name varchar(10) mysql> desc student; +-------------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------------+-------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | name | varchar(10) | YES | | NULL | | | sex | int(11) | YES | | 1 | | | classes | int(11) | YES | | NULL | | | age | int(11) | YES | | NULL | | | description | text | YES | | NULL | | +-------------+-------------+------+-----+---------+----------------+ 6 rows in set (0.00 sec)mysql> alter table student modify name varchar(32); Query OK, 0 rows affected (0.01 sec) Records: 0 Duplicates: 0 Warnings: 0# 修改之后name varchar(32) mysql> desc student; +-------------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------------+-------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | name | varchar(32) | YES | | NULL | | | sex | int(11) | YES | | 1 | | | classes | int(11) | YES | | NULL | | | age | int(11) | YES | | NULL | | | description | text | YES | | NULL | | +-------------+-------------+------+-----+---------+----------------+ 6 rows in set (0.00 sec)
-
change(名字类型都可)
alter table 表名 change 字段名 字段类型(宽度);
(2)修改表的名字(重命名)
语法:
alter table 原表名 rename 新表名;
示例:
mysql> alter table student rename students-> ; Query OK, 0 rows affected (0.01 sec)
(3)添加字段
-
默认是尾部追加字段
语法:
alter table 表名 add 字段名 字段类型;
示例:
mysql> alter table students add a int; Query OK, 0 rows affected (0.04 sec) Records: 0 Duplicates: 0 Warnings: 0mysql> desc students; +-------------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------------+-------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | name | varchar(32) | YES | | NULL | | | sex | int(11) | YES | | 1 | | | classes | int(11) | YES | | NULL | | | age | int(11) | YES | | NULL | | | description | text | YES | | NULL | | | a | int(11) | YES | | NULL | | +-------------+-------------+------+-----+---------+----------------+ 7 rows in set (0.00 sec)
-
指定追加位置
语法:
alter table 表名 add 字段名 字段类型 after 原字段名;
示例:
mysql> alter table students add b int after a; Query OK, 0 rows affected (0.03 sec) Records: 0 Duplicates: 0 Warnings: 0mysql> desc students; +-------------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------------+-------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | name | varchar(32) | YES | | NULL | | | sex | int(11) | YES | | 1 | | | classes | int(11) | YES | | NULL | | | age | int(11) | YES | | NULL | | | description | text | YES | | NULL | | | a | int(11) | YES | | NULL | | | b | int(11) | YES | | NULL | | +-------------+-------------+------+-----+---------+----------------+ 8 rows in set (0.00 sec)
-
指定头部添加字段
语法:
alter table 表名 add 字段名 字段类型 first;
示例:
mysql> alter table students add c int first; Query OK, 0 rows affected (0.04 sec) Records: 0 Duplicates: 0 Warnings: 0mysql> desc students; +-------------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------------+-------------+------+-----+---------+----------------+ | c | int(11) | YES | | NULL | | | id | int(11) | NO | PRI | NULL | auto_increment | | name | varchar(32) | YES | | NULL | | | sex | int(11) | YES | | 1 | | | classes | int(11) | YES | | NULL | | | age | int(11) | YES | | NULL | | | description | text | YES | | NULL | | | a | int(11) | YES | | NULL | | | b | int(11) | YES | | NULL | | +-------------+-------------+------+-----+---------+----------------+ 9 rows in set (0.00 sec)
(4)删除字段
语法:
alter table 表名 drop 字段名;
示例:
mysql> desc students; +-------------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------------+-------------+------+-----+---------+----------------+ | c | int(11) | YES | | NULL | | | id | int(11) | NO | PRI | NULL | auto_increment | | name | varchar(32) | YES | | NULL | | | sex | int(11) | YES | | 1 | | | classes | int(11) | YES | | NULL | | | age | int(11) | YES | | NULL | | | description | text | YES | | NULL | | | a | int(11) | YES | | NULL | | | b | int(11) | YES | | NULL | | +-------------+-------------+------+-----+---------+----------------+ 9 rows in set (0.00 sec)mysql> alter table students drop c; Query OK, 0 rows affected (0.04 sec) Records: 0 Duplicates: 0 Warnings: 0mysql> desc students; +-------------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------------+-------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | name | varchar(32) | YES | | NULL | | | sex | int(11) | YES | | 1 | | | classes | int(11) | YES | | NULL | | | age | int(11) | YES | | NULL | | | description | text | YES | | NULL | | | a | int(11) | YES | | NULL | | | b | int(11) | YES | | NULL | | +-------------+-------------+------+-----+---------+----------------+ 8 rows in set (0.00 sec)
(5)删除表
语法:
drop table 表名;
示例:
mysql> show tables; +------------------+ | Tables_in_my_one | +------------------+ | classes | | courses | | students | +------------------+ 3 rows in set (0.00 sec)mysql> drop table courses; Query OK, 0 rows affected (0.01 sec)mysql> show tables; +------------------+ | Tables_in_my_one | +------------------+ | classes | | students | +------------------+ 2 rows in set (0.00 sec)
【三】针对数据的增删查改
# 新建表 添加数据 insert into 表名 (字段名,字段名) values(值,值); INSERT [INTO] <表名> [ <列名1> [ , … <列名n>] ] VALUES (值1) [… , (值n) ];
mysql> create table student(-> d varchar(32),-> e int-> ); Query OK, 0 rows affected (0.03 sec)mysql> show tables; +------------------+ | Tables_in_my_one | +------------------+ | classes | | student | | students | +------------------+ 3 rows in set (0.00 sec)mysql> desc student-> ; +-------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+-------+ | d | varchar(32) | YES | | NULL | | | e | int(11) | YES | | NULL | | +-------+-------------+------+-----+---------+-------+ 2 rows in set (0.00 sec)
(1)插入数据
mysql> insert into student (d,e) values('knight',22),('hyt',24); Query OK, 2 rows affected (0.01 sec) Records: 2 Duplicates: 0 Warnings: 0
(2)查看数据
语法:
select * from 表名;
示例:
mysql> select * from student; +--------+------+ | d | e | +--------+------+ | knight | 22 | | hyt | 24 | +--------+------+ 2 rows in set (0.00 sec)
(3)更改数据
语法:
update 表名 set 字段名=字段值 where name="";
示例:
mysql> select * from student; +--------+------+ | d | e | +--------+------+ | knight | 22 | | hyt | 24 | +--------+------+ 2 rows in set (0.00 sec)mysql> update student set e=18 where d="hyt"; Query OK, 1 row affected (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 0mysql> select * from student; +--------+------+ | d | e | +--------+------+ | knight | 22 | | hyt | 18 | +--------+------+ 2 rows in set (0.00 sec)
(4)删除数据
语法:
delete from 表名 where 字段名=字段值;
示例:
mysql> delete from student where d="knight"; Query OK, 1 row affected (0.00 sec)mysql> select * from student; +------+------+ | d | e | +------+------+ | hyt | 18 | +------+------+ 1 row in set (0.00 sec)
注意:
-
使用 DROP DATABASE/TABLE 命令时要非常谨慎,
-
在执行该命令后,MySQL 不会给出任何提示确认信息。
-
DROP DATABASE 删除数据库后,数据库中存储的所有数据表和数据也将一同被删除,而且不能恢复。
-
因此最好在删除数据库之前先将数据库进行备份。
相关文章:
操作MySQL数据库
【一】针对库的增删查改(文件夹) 【1】创建数据库 (1)语法 创建一个存储数据表的文件夹。 注意:mysql中的编码字符集中utf-8,要换成utf8mb4。SQL语句中的中括号部分表示可选。 create database [if no…...
Linux shell 文件生成文件脚本(模拟生成文件、生成大量文件)
文章目录 Linux shell 文件生成文件脚本 Linux shell 文件生成文件脚本 TARGET_DIR:生成文件路径 NUM_FILES:生成文件数量 FILE_SIZE:生成文件大小(KB) #!/bin/bashset -e set -u# Directory where files will be cr…...

theharvester一键收集域名信息(KALI工具系列十)
目录 1、KALI LINUX简介 2、theharvester工具简介 3、在KALI中使用theharvester 3.1 用搜索引擎扫描 3.2 扫描并输出结果 3.3 扫描某域名下的所有账号 3.4 使用所有的搜索引擎扫描 4、总结 1、KALI LINUX简介 Kali Linux 是一个功能强大、多才多艺的 Linux 发行版&…...
「动态规划」删除并获得点数
力扣原题链接,点击跳转。 给你一个整数数组nums。每次操作,可以删除任意一个值n,接着获得点数n,并同时删除所有的n-1和n1。你最多能获取多少点数? 这个问题的解法相当巧妙。我们可以把问题先转化一下。用类似计数排序…...
MongoDB CRUD操作:内嵌文档数组查询
MongoDB 内嵌文档数组查询 文章目录 MongoDB 内嵌文档数组查询查询数组内嵌文档为文档数组中的字段指定查询条件指定文档数组内嵌文档字段的查询条件使用数组索引查询内嵌文档的字段 为文档数组指定多个条件单个内嵌文档满足内嵌字段的多个查询条件符合标准的元素组合 使用 Mon…...
【C++】每日一题 50 Pow(x,n)
实现 pow(x, n) ,即计算 x 的整数 n 次幂函数(即,x^n )。 当需要计算x的n次幂时,可以使用递归或者迭代的方式来实现。 #include <iostream>double myPow(double x, int n) {if (n 0) {return 1.0;} else if (…...
HG/T 6088-2022 透水道路用涂料检测
透水混凝土是指由水泥、矿物掺合料、骨料、外加剂及水等主要材料经拌合形成的,具有透水功能的混凝土材料,用于其表面的涂料称为透水道路用涂料。 HG/T 6088-2022透水道路用涂料检测项目: 测试指标 测试方法 有害物质限量 GB 38468 在容器…...
linux定时清理docker日志脚本
Linux 定时清理 Docker 日志的脚本与配置指南 在使用 Docker 容器化应用程序时,日志文件可能会迅速增长,占用大量磁盘空间。为了保持系统的稳定性和高效运行,定期清理 Docker 日志文件是必要的。本文将介绍如何编写一个 Linux 脚本来清理 Docker 日志文件,并通过 cron 定时…...

ROS学习笔记(16):夹缝循迹
0.前言 在笔记的第15期对巡墙驾驶的原理进行了简单讲解,而这期我们来讲一下夹缝循迹,也常被叫follow the gap,也更新一些概念。 1.探索式路径规划与避障 1.概念 无预先建图的路径规划叫探索式路径规划,例如巡墙循迹和夹缝循迹&…...
【MySQL精通之路】SQL语句(3)-锁和事务语句
目录 1.START TRANSACTION、COMMIT和ROLLBACK语句 2.无法回滚的语句 3.导致隐含COMMIT的语句 4.SAVEPOINT、ROLLBACK TO SAVEPOINT和RELEASE SAVEPOINT语句 5.LOCK INSTANCE FOR BACKUP和UNLOCK INSTANCE语句 6.LOCK TABLE和UNLOCK TABLES语句 6.1 表锁获取 6.2 表锁释放…...

211大学计算机专业不考408,新增的交叉专业却考408!南京农业大学计算机考研考情分析!
南京农业大学信息科技学院可追溯至1981年成立的计算中心和1985年筹建的农业图书情报专业。1987年设立了农业图书情报系,1993 年农业图书情报系更名为信息管理系,本科专业名称也于1999年更名为信息管理与信息系统专业。1994年计算中心开始招收计算机应用专…...

利用java8 的 CompletableFuture 优化 Flink 程序,性能提升 50%
你好,我是 shengjk1,多年大厂经验,努力构建 通俗易懂的、好玩的编程语言教程。 欢迎关注!你会有如下收益: 了解大厂经验拥有和大厂相匹配的技术等 希望看什么,评论或者私信告诉我! 文章目录 一…...

香橙派 AIpro综合体验及AI样例运行
香橙派 AIpro综合体验及AI样例运行 环境: 香橙派版本: AIpro(8TOPSINT8) OS : Ubuntu 22.04.3 LTS(GNU/Linux 5.10.0 aarch64) (2024-03-18) 远程服务端1:OpenSSH 8.9p1 远程服务端2:TightVNC Server 1.3.10 远程客户端…...

通过域名接口申请免费的ssl多域名证书
来此加密已顺利接入阿里云的域名接口,用户只需一键调用,便可轻松完成域名验证,从而更高效地申请证书。接下来,让我们详细解读一下整个操作过程。 来此加密官网 免费申请SSL证书 免费SSL多域名证书,泛域名证书。 首先&a…...

【JAVA WEB实用与优化技巧】如何自己封装一个自定义UI的Swagger组件,包含Swagger如何处理JWT无状态鉴权自动TOKEN获取
目录 一、Swagger 简介1. 什么是 Swagger?2. 如何使用 Swagger3. Springboot 中swagger的使用示例1. maven 引入安装2. java配置 二、Swagger UI存在的缺点1.不够方便直观2.请求的参数没有缓存3.不够美观4.如果是JWT 无状态登录,Swagger使用起来就没有那…...

理解大语言模型(二)——从零开始实现GPT-2
相关说明 这篇文章的大部分内容参考自我的新书《解构大语言模型:从线性回归到通用人工智能》,欢迎有兴趣的读者多多支持。 本文涉及到的代码链接如下:regression2chatgpt/ch11_llm/char_gpt.ipynb1 本文将讨论如何利用PyTorch从零开始搭建G…...
SSH远程登录时常见问题解决
SSH时出现WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! 问题解决——SSH时出现WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! 翻译过来就是 警告:远程主机标识已更改! 此报错是由于远程的…...

工业级3D开发引擎HOOPS:创新与效率的融合!
在当今这个技术日新月异的时代,3D技术已成为推动各行各业发展的重要力量。从工程设计到游戏开发,从虚拟现实到增强现实,3D技术的应用无处不在,它极大地丰富了我们的生活和工作。而在这样的背景下,HOOPS作为一个强大的3…...

IDEA创建Spring Boot项目
1 打开新建项目界面 如图1,打开IDEA,点击菜单栏的File->New->Project,打开新建项目界面。 图1 新建项目 2 填写项目信息 在新建项目界面点击左侧工具栏的Spring Initializr选项,进行Spring Boot项目信息的填写ÿ…...

mysql实战——xtrabackup全量备份/增量备份及恢复
一、测试前准备 mysql数据库 端口3306数据文件目录 /data/mysql/3306/data 安装目录/usr/lcoal/mysql配置文件/etc/my.cnf 创建数据库 testXtra 创建备份目录 备份目录/data/backup/备份恢复数据文件目录/data/mysql/3307/data备份恢复配置文件/etc/my_3307.cnf 二、开始…...

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?
编辑:陈萍萍的公主一点人工一点智能 未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战,在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...
设计模式和设计原则回顾
设计模式和设计原则回顾 23种设计模式是设计原则的完美体现,设计原则设计原则是设计模式的理论基石, 设计模式 在经典的设计模式分类中(如《设计模式:可复用面向对象软件的基础》一书中),总共有23种设计模式,分为三大类: 一、创建型模式(5种) 1. 单例模式(Sing…...
应用升级/灾备测试时使用guarantee 闪回点迅速回退
1.场景 应用要升级,当升级失败时,数据库回退到升级前. 要测试系统,测试完成后,数据库要回退到测试前。 相对于RMAN恢复需要很长时间, 数据库闪回只需要几分钟。 2.技术实现 数据库设置 2个db_recovery参数 创建guarantee闪回点,不需要开启数据库闪回。…...
STM32+rt-thread判断是否联网
一、根据NETDEV_FLAG_INTERNET_UP位判断 static bool is_conncected(void) {struct netdev *dev RT_NULL;dev netdev_get_first_by_flags(NETDEV_FLAG_INTERNET_UP);if (dev RT_NULL){printf("wait netdev internet up...");return false;}else{printf("loc…...
如何为服务器生成TLS证书
TLS(Transport Layer Security)证书是确保网络通信安全的重要手段,它通过加密技术保护传输的数据不被窃听和篡改。在服务器上配置TLS证书,可以使用户通过HTTPS协议安全地访问您的网站。本文将详细介绍如何在服务器上生成一个TLS证…...
BLEU评分:机器翻译质量评估的黄金标准
BLEU评分:机器翻译质量评估的黄金标准 1. 引言 在自然语言处理(NLP)领域,衡量一个机器翻译模型的性能至关重要。BLEU (Bilingual Evaluation Understudy) 作为一种自动化评估指标,自2002年由IBM的Kishore Papineni等人提出以来,…...
「全栈技术解析」推客小程序系统开发:从架构设计到裂变增长的完整解决方案
在移动互联网营销竞争白热化的当下,推客小程序系统凭借其裂变传播、精准营销等特性,成为企业抢占市场的利器。本文将深度解析推客小程序系统开发的核心技术与实现路径,助力开发者打造具有市场竞争力的营销工具。 一、系统核心功能架构&…...

在 Spring Boot 中使用 JSP
jsp? 好多年没用了。重新整一下 还费了点时间,记录一下。 项目结构: pom: <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://ww…...

GAN模式奔溃的探讨论文综述(一)
简介 简介:今天带来一篇关于GAN的,对于模式奔溃的一个探讨的一个问题,帮助大家更好的解决训练中遇到的一个难题。 论文题目:An in-depth review and analysis of mode collapse in GAN 期刊:Machine Learning 链接:...

【多线程初阶】单例模式 指令重排序问题
文章目录 1.单例模式1)饿汉模式2)懒汉模式①.单线程版本②.多线程版本 2.分析单例模式里的线程安全问题1)饿汉模式2)懒汉模式懒汉模式是如何出现线程安全问题的 3.解决问题进一步优化加锁导致的执行效率优化预防内存可见性问题 4.解决指令重排序问题 1.单例模式 单例模式确保某…...