【数据库初阶】MySQL数据类型

news2025/1/6 10:11:51
图片名称
🎉博主首页: 有趣的中国人

🎉专栏首页: 数据库初阶

🎉其它专栏: C++初阶 | C++进阶 | 初阶数据结构

在这里插入图片描述

亲爱的小伙伴们,大家好!在这篇文章中,我们将深入浅出地为大家讲解 MySQL数据类型 帮助您轻松入门,快速掌握核心概念。


如果文章对您有所启发或帮助,请别忘了 点赞 👍、收藏 🌟、留言 📝 支持!您的每一份鼓励,都是我持续创作的源动力。让我们携手前行,共同进步!

文章目录

    • @[toc]
  • 1. 数值类型
    • 🎧1.1 数值类型纵览🎧
    • 🎧1.2 smallint 类型🎧
    • 🎧1.3 类比 C/C++ 截断操作🎧
    • 🎧1.4 修改表数据类型🎧
    • 🎧1.5 无符号类型🎧
  • 2. bit 类型
    • 🎧2.1 bit 类型介绍🎧
    • 🎧2.2 bit 类型详解🎧
  • 3. 小数类型
    • 🎧3.1 float类型🎧
    • 🎧3.2 decimal 类型🎧
  • 4. 字符串类型
    • 🎧4.1 char类型🎧
    • 🎧4.2 varchar类型🎧
    • 🎧4.3 char 和 varchar 比较🎧
  • 5. 日期类型
  • 6. enum 和 set
    • 🎧6.1 enum类型🎧
    • 🎧6.2 set 类型🎧
    • 🎧6.3 查找🎧

上一篇文章中,博主介绍了 :

  • MySQL表的相关操作

建议将上一篇文章看完之后再来看这篇文章,链接如下:

【数据库初阶】Linux中表的基础操作

那么接下来正文开始:



1. 数值类型

🎧1.1 数值类型纵览🎧

  • MySQL中数据类型为数值类型的如下:
数据类型字节数带符号最小值带符号最大值无符号最小值无符号最大值
TINYINT1-128 (-2^7)127 (2^7 - 1)0255 (2^8 - 1)
SMALLINT2-32,768 (-2^15)32,767 (2^15 - 1)065,535 (2^16 - 1)
MEDIUMINT3-8,388,608 (-2^23)8,388,607 (2^23 - 1)016,777,215 (2^24 - 1)
INT4-2,147,483,648 (-2^31)2,147,483,647 (2^31 - 1)04,294,967,295 (2^32 - 1)
BIGINT8-9,223,372,036,854,775,808 (-2^63)9,223,372,036,854,775,807 (2^63 - 1)018,446,744,073,709,551,615 (2^64 - 1)
  • 接下来,博主将以SMALLINT类型为例进行讲解:

🎧1.2 smallint 类型🎧

  1. 首先创建数据库 test1,之后进入此数据库:
    • 输入如下代码:
    • create database if not exists test1;
    • use test1;
  2. 创建表 t1,在其中插入一个类型为smallintid
    • create table if not exists t1(id smallint);
  3. 插入一条数据:
  • insert into t1 (id) values (100);

在这里插入图片描述

  1. 插入一个越界数 32768 或者 -32769
  • mysql> insert into t1 (id) values (32768);
  • mysql> insert into t1 (id) values (-32769);
  • 很明显会报错。

在这里插入图片描述

🎧1.3 类比 C/C++ 截断操作🎧

  • 如果我们在 C/C++ 中输入下面代码,会发生什么呢:
char ch = 12345;
std::cout << ch << std::endl;
  • 首先,因为char类型是 1 B y t e 1Byte 1Byte,范围是 -128 ~ 127
  • 所以很明显, 12345 12345 12345 超出范围了;
  • 但是一般情况下编译器不会直接报错,而是会在编译阶段发生截断操作
  • 这就意味着编译器只会读取 12345 12345 12345 转化成 二进制的低八位
    • 12345 12345 12345的二进制: 0011 0011 0011 0000 0000 0000 0011 0011 0011 1001 1001 1001
    • 截断: 0011 0011 0011 1001 1001 1001 (BIN) -> 57 57 57 (DEC)
  • 所以结果就是 57 57 57 对应的 ASCII 码值。
  • 所以在MySQL中在我们输入的时候就给了限制,这其实是对 程序员的一种约束

🎧1.4 修改表数据类型🎧

  • 如果我们将定义时比较大范围的类型改成比较小的类型会发生什么呢?例如将smallint 改变成 tinyint

在这里插入图片描述

  • 这里会直接报错,所以系统会 约束 程序员不要将大范围的类型转换成小范围的类型。

🎧1.5 无符号类型🎧

  • MySQL中,整型可以指定是有符号的和无符号的,默认是有符号的;
  • 可以通过UNSIGNED来说明某个字段是无符号的;
  • 输入下面代码给刚才的 t1 表添加一列:
    • mysql> alter table t1 add column age tinyint unsigned;
    • 注意这里 unsigned 要放在 tinyint 后面。

在这里插入图片描述

  • 由于无符号的tinyint的范围是 0 ~ 255 ,尝试插入 256,输入以下代码:
    • insert into t1 (id, age) values (1,256);

在这里插入图片描述

  • 很明显,这也被约束了。

2. bit 类型

🎧2.1 bit 类型介绍🎧

  • bit(M) : 位字段类型。M表示每个值的位数,范围从1 ~64。如果M被忽略,默认为1
  • 创建表 t2,字段为 id intgender bit,代码如下:
mysql> create table if not exists t2(
    -> 		id int,
    -> 		gender bit
    -> );
  • 注意细节,默认bit就是1位
    在这里插入图片描述

🎧2.2 bit 类型详解🎧

  • 在表中插入两行:(10, 0)(20, 1)

    • 输入代码:
    • mysql> insert into t2 (id, gender) values (10, 0);
    • mysql> insert into t2 (id, gender) values (20, 1);
  • 进行查询:

    • 输入语句:mysql> select * from t2;

在这里插入图片描述

  • 说明:博主这个MySQL8.0版本之后,如果是在此版本之前,bit类型会显示ASCII码对应的值,但是我这个版本就显示十六进制了。

完整操作代码:

mysql> insert into t2 (id, gender) values (10, 0);
Query OK, 1 row affected (0.00 sec)

mysql> insert into t2 (id, gender) values (20, 1);
Query OK, 1 row affected (0.01 sec)

mysql> select * from t2;
+------+----------------+
| id   | gender         |
+------+----------------+
|   10 | 0x00           |
|   20 | 0x01           |
+------+----------------+
2 rows in set (0.00 sec)


3. 小数类型

🎧3.1 float类型🎧

  • 语法:float[(m, d)] [unsigned]

    • M 指定显示长度;
    • d 指定小数位数,占用空间4个字节。
  • 如果是 float(4,2),那么它的范围就是 -99.99 ~ 99.99,例如:

    • 插入99.99 是可以的:insert into t3 values(100, 99.99);
    • 插入 100.00 是不行的:insert into t3 values(100, 100.00);
    • 但是插入 99.994 也是可以的,但是会被优化掉(四舍五入):insert into t3 values(100, 99.994);
    • 类似的,插入-99.994是可以的,但是插入-99.995就不行了:
      • insert into t3 values(100, -99.994);
      • insert into t3 values(100, -99.995);

在这里插入图片描述

  • 完整代码:
mysql> create table t3(
    -> id int,
    -> salary float(4,2)
    -> );
Query OK, 0 rows affected, 1 warning (0.10 sec)

mysql> insert into t3 values(100, 99.99);
Query OK, 1 row affected (0.01 sec)

mysql> insert into t3 values(100, 100);
ERROR 1264 (22003): Out of range value for column 'salary' at row 1
mysql> insert into t3 values(100, 100.00);
ERROR 1264 (22003): Out of range value for column 'salary' at row 1
mysql> insert into t3 values(100, 99.994);
Query OK, 1 row affected (0.01 sec)

mysql> insert into t3 values(100, -99.994);
Query OK, 1 row affected (0.00 sec)

mysql> insert into t3 values(100, -99.995);
ERROR 1264 (22003): Out of range value for column 'salary' at row 1
mysql> select * from t3;
+------+--------+
| id   | salary |
+------+--------+
|  100 |  99.99 |
|  100 |  99.99 |
|  100 | -99.99 |
+------+--------+
3 rows in set (0.00 sec)

  • 默认情况下,浮点数都是带符号的,如果不要带符号的浮点数,例如:float(4,2) unsigned 范围就是 0 ~ 99.99,这里就不尝试了。

🎧3.2 decimal 类型🎧

  • 语法:decimal(m, d) [unsigned] :

    • 定点数m指定长度;
    • d表示小数点的位数。
  • decimal(5,2) 表示的范围是 -999.99 ~ 999.99

  • decimal(5,2) unsigned 表示的范围 0 ~ 999.99

decimalfloat很像,但是有区别!

  • 他们表示的精度不一样!
  • 例如,创建下面的表:
mysql> create table t4(
    -> 		id int,
    -> 		salary1 float(10,8),
    -> 		salary2 decimal(10,8)
    -> );
  • 插入元素 23.12345612
    • mysql> insert into t4 values(100, 23.12345612, 23.12345612);
  • 查看结果:select * from t4;

在这里插入图片描述

  • 可以发现decimal的精度更准确,因此如果我们希望某个数据表示高精度,选择decimal
  • float表示的精度大约是7
    • decimal整数最大位数m65
    • 支持小数最大位数d30。如果d被省略,默认为0,如果m被省略,默认是10

完整代码:

mysql> create table t4(
    -> id int,
    -> salary1 float(10,8),
    -> salary2 decimal(10,8)
    -> );
Query OK, 0 rows affected, 1 warning (0.05 sec)

mysql>  insert into t4 values(100, 23.12345612, 23.12345612);
Query OK, 1 row affected (0.01 sec)

mysql> select * from t4;
+------+-------------+-------------+
| id   | salary1     | salary2     |
+------+-------------+-------------+
|  100 | 23.12345695 | 23.12345612 |
+------+-------------+-------------+
1 row in set (0.00 sec)


4. 字符串类型

🎧4.1 char类型🎧

  • 语法:char(L)

    • 固定长度字符串,L是可以存储的长度;
    • 单位为 字符
      • 注意这里是字符,不是字节,字符就是你实际存了多少个。
    • 最大长度值可以为255
  • 示例:

mysql> create table t5(
    -> 		id int,
    -> 		name char(3)
    -> );
  • 插入元素,下面都正确:

    • insert into t5 values(1,'张三三');
    • insert into t5 values(2,'abc');
    • insert into t5 values(3,'李四');
  • 因为存放的是字符,不管是字母还是汉字都是正确的,但是char不能超过255个字符。

🎧4.2 varchar类型🎧

  • 语法:varchar(L)
    • 可变长度字符串,
    • L表示字符长度,最大长度65535字节
      • 注意这里单位就是字节了!

关于L最大值的讲解:

  • utf8mb4中,每个字符可以是1~4个字节长度,具体可以看下图:

在这里插入图片描述

  • 那么L的最大值应该是什么呢?还需要了解下面一点:
  • 对于 VARCHAR,存储内容需要额外加上 1~2 字节的长度前缀,用于表示数据的实际字节长度:
    • 如果字段定义的最大长度 ≤ 255,使用 1 字节表示长度;
    • 如果字段定义的最大长度 > 255,使用 2 字节表示长度。
  • 因此,MySQL考虑的是最坏的情况:
    • 取出两个字节的长度,假设每个字符都是四个字节,就可以得到下面的结果:
    • ( 65535 − 2 ) / 4 = 16383 (65535 - 2) / 4 = 16383 (655352)/4=16383

在这里插入图片描述

  • 示例:
mysql> insert into t7 values(100, '我爱你,中国');
Query OK, 1 row affected (0.00 sec)

mysql> select * from t7;
+------+--------------------+
| id   | name               |
+------+--------------------+
|  100 | 我爱你,中国         |
+------+--------------------+
1 row in set (0.00 sec)


🎧4.3 char 和 varchar 比较🎧

  • 如果数据确定长度都一样,就使用定长(char),比如:身份证,手机号,md5
  • 如果数据长度有变化,就使用变长(varchar), 比如:名字,地址,但是你要保证最长的能存的进去。
  • 定长的磁盘空间比较浪费,但是效率高。
  • 变长的磁盘空间比较节省,但是效率低。
  • 定长的意义是,直接开辟好对应的空间
  • 变长的意义是,在不超过自定义范围的情况下,用多少,开辟多少。

5. 日期类型

常用的日期有如下三个:

  • date :日期 'yyyy-mm-dd' ,占用三字节;

  • datetime 时间日期格式 'yyyy-mm-dd HH:ii:ss' 表示范围从 10009999 ,占用八字节;

  • timestamp :时间戳,从1970年开始的 yyyy-mm-dd HH:ii:ss 格式和 datetime 完全一致,占用四字节。

  • 示例:

//创建表
mysql> create table birthday (t1 date, t2 datetime, t3 timestamp);
Query OK, 0 rows affected (0.01 sec)
//插入数据:
mysql> insert into birthday(t1,t2) values('1997-7-1','2008-8-8 12:1:1'); --插入两种时间
Query OK, 1 row affected (0.00 sec)
mysql> select * from birthday;
+------------+---------------------+---------------------+
| t1         | t2                  | t3                  |
+------------+---------------------+---------------------+
| 1997-07-01 | 2008-08-08 12:01:01 | 2017-11-12 18:28:55 | --添加数据时,时间戳自动补上当前时间
+------------+---------------------+---------------------+
//更新数据:
mysql> update birthday set t1='2000-1-1';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
mysql> select * from birthday;
+------------+---------------------+---------------------+
| t1         | t2                  | t3                  |
+------------+---------------------+---------------------+
| 2000-01-01 | 2008-08-08 12:01:01 | 2017-11-12 18:32:09 | -- 更新数据,时间戳会更新成当前时间
+------------+---------------------+---------------------+

6. enum 和 set

🎧6.1 enum类型🎧

  • enum是枚举类型,学过C的都很熟悉;
  • 语法:
  • enum('选项1','选项2','选项3',...);

示例:

  1. 创建表
  2. 插入数据
    • 这里插入数据可以选一个插入;
    • 当然也可以用下标来插入 ,开始的下标是1
mysql> create table t8 (
    -> 		gender enum('男','女')
    -> );
mysql> insert into t8 values('男');
Query OK, 1 row affected (0.01 sec)

mysql> insert into t8 values('女');
Query OK, 1 row affected (0.01 sec)

// 或者下标:

mysql> insert into t8 values(1);
Query OK, 1 row affected (0.01 sec)

mysql> insert into t8 values(2);
Query OK, 1 row affected (0.01 sec)


🎧6.2 set 类型🎧

  • 语法:set('选项值1','选项值2','选项值3', ...);
  • 这是一个集合类型,可以从中选择多个!
  • 创建一个表,其中包含爱好的set类型

在这里插入图片描述

  • 向其中插入元素:

在这里插入图片描述

  • set中就不可以用下标了,这里是 位图的形式
    • 例如一共有五个爱好,如果想象成5个二进制位,如果对应的位置是你的爱好,此为就是1
    • 例如这五个全都是我的爱好,那么 00001 00001 00001 1111 1111 1111 就是 31 31 31

在这里插入图片描述

  • 如果只喜欢爬山和游泳,那么就是 0000 0000 0000 0011 0011 0011,转化成十进制就是 3 3 3

在这里插入图片描述

  • 那如果是0会发生什么呢?
    • 这里是空不是没有数据!

在这里插入图片描述

🎧6.3 查找🎧

  • 现在先看一下表:
mysql> select * from t9;
+--------+---------------------------------------+
| name   | hobby                                 |
+--------+---------------------------------------+
| Alice  | 爬山                                  |
| Alan   | 足球,代码                             |
| Mikael | 爬山,游泳,乒乓球,足球,代码            |
| Peter  | 爬山,游泳                             |
| kk     |                                       |
+--------+---------------------------------------+
5 rows in set (0.00 sec)

  • 假如我要查找所有喜欢爬山的人怎么找呢?用到 find_in_set() 函数
  • 这个函数表示查找一个元素是否在集合中,返回0为假,非0为真

在这里插入图片描述

mysql> select find_in_set('a','a,b');
+------------------------+
| find_in_set('a','a,b') |
+------------------------+
|                      1 |
+------------------------+
1 row in set (0.00 sec)

  • 所以就有了下面的用法:
    • where 有点类似于 if 语句
mysql> select * from t9 where find_in_set('爬山',hobby);
+--------+---------------------------------------+
| name   | hobby                                 |
+--------+---------------------------------------+
| Alice  | 爬山                                  |
| Mikael | 爬山,游泳,乒乓球,足球,代码            |
| Peter  | 爬山,游泳                             |
+--------+---------------------------------------+
3 rows in set (0.00 sec)

  • 当然,如果想要查找喜欢爬山和游泳的人,可以用and连接两个find_in_set()函数,例如:
mysql> select * from t9 where find_in_set('爬山',hobby) and find_in_set('游泳',hobby);
+--------+---------------------------------------+
| name   | hobby                                 |
+--------+---------------------------------------+
| Mikael | 爬山,游泳,乒乓球,足球,代码            |
| Peter  | 爬山,游泳                             |
+--------+---------------------------------------+
2 rows in set (0.00 sec)

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

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

相关文章

kubernetes学习-Service

kubernetes学习-Service 1. Service说明2. 功能3.Service类型3.1 NodePort3.1.1 创建web-service.yaml3.1.2 创建web-pod.yaml3.1.3 部署3.1.4 验证 3.2 ClusterIP3.2.1 创建web-clusterIp-service.yaml3.2.2 创建web-clusterIp-pod.yaml3.2.3 部署3.2.4 验证 3.3 LoadBalancer…

滤波器的主要参数

为什么选择高阶&#xff1a; 滤波器的主要参数通常包括以下几个方面&#xff1a; 截止频率 (Cutoff Frequency)&#xff1a; 这是滤波器能够有效通过或抑制信号的频率点。对于低通滤波器&#xff0c;信号低于截止频率的部分会被通过&#xff0c;高于截止频率的部分会被衰减。高…

设计模式 创建型 单例模式(Singleton Pattern)与 常见技术框架应用 解析

单例模式&#xff08;Singleton Pattern&#xff09;是一种创建型设计模式&#xff0c;旨在确保某个类在应用程序的生命周期内只有一个实例&#xff0c;并提供一个全局访问点来获取该实例。这种设计模式在需要控制资源访问、避免频繁创建和销毁对象的场景中尤为有用。 一、核心…

290-3U VPX i7 刀片计算机

一、产品概述 该产品是一款基于第三代Intel i7双核四线程的高性能3U VPX刀片式计算机。产品提供了多个高速PCIe总线接口&#xff0c;其中3个x4 PCIe 3.0接口&#xff0c;1个x4 PCIe 2.0接口。x4 PCIe 2.0接口可灵活配置为4个x1 PCIe接口&#xff0c;因此产品具有很强的扩展性&a…

【从零开始入门unity游戏开发之——C#篇41】C#迭代器(Iterator)——自定义类实现 foreach 操作

文章目录 前言一、什么是迭代器&#xff1f;二、标准迭代器的实现方法1、自定义一个类CustomList2、让CustomList继承IEnumerable接口3、再继承IEnumerator接口4、完善迭代器功能5、**foreach遍历的本质**&#xff1a;6、在Reset方法里把光标复原 三、用yield return语法糖实现…

win32汇编环境,对话框程序中通过资源显示bmp图像

;运行效果 ;win32汇编环境,对话框程序中通过资源显示bmp图像 ;通过资源的方式&#xff0c;会把图像固定在exe文件里&#xff0c;会变大。通过读取文件的方式&#xff0c;没有固定在exe文件里&#xff0c;也可以随时换图像文件&#xff0c;所以exe文件较小 ;直接抄进RadAsm可编译…

MATLAB画柱状图

一、代码 clear; clc; figure(position,[150,100,900,550])%确定图片的位置和大小&#xff0c;[x y width height] %准备数据 Y1[0.53,7.9,8.3;0.52,6.8,9.2;0.52,5.9,8.6;2.8,5.8,7.9;3.9,5.2,7.8;1.8,5.8,8.4]; % withoutNHC X11:6; %画出4组柱状图&#xff0c;宽度1 h1…

java 搭建一个springboot3.4.1项目 JDK21

环境准备 idea:2021 springboot:3.4.1 JDK:21 maven:3.6.3 新建项目 点击new->project->spring initializr 选择springboot版本 1.选择springboot版本&#xff0c;因为JDK版本是21因此对应springboot3.X Spring Boot 2.6.x&#xff1a;适用于JDK 8到17&#xff0c…

第R3周:RNN-心脏病预测

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 文章目录 一、前言二、代码流程1、导入包&#xff0c;设置GPU2、导入数据3、数据处理4、构建RNN模型5、编译模型6、模型训练7、模型评估 电脑环境&#xff1a;…

40% 降本:多点 DMALL x StarRocks 的湖仓升级实战

小编导读&#xff1a; 多点 DMALL 成立于2015年&#xff0c;持续深耕零售业&#xff0c;为企业提供一站式全渠道数字零售解决方案 DMALL OS。作为 DMALL OS 数字化能力的技术底座&#xff0c;大数据平台历经多次迭代平稳支撑了公司 To B 业务的快速开展。随着国家产业升级和云原…

Docker 环境中搭建 Redis 哨兵模式集群的步骤与问题解决

在 Docker 环境中搭建 Redis 哨兵模式集群的步骤与问题解决 在 Redis 高可用架构中&#xff0c;哨兵模式&#xff08;Sentinel&#xff09;是确保 Redis 集群在出现故障时自动切换主节点的一种机制。通过使用 Redis 哨兵&#xff0c;我们可以实现 Redis 集群的监控、故障检测和…

华为消费级QLC SSD来了

近日&#xff0c;有关消息显示&#xff0c;华为的消费级SSD产品线&#xff0c;eKitStor Xtreme 200E系列&#xff0c;在韩国一家在线零售商处首次公开销售&#xff0c;引起了业界的广泛关注。 尽管华为已经涉足服务器级别的SSD制造多年&#xff0c;但直到今年6月才正式推出面向…

StableDiffusionWebUI本地部署指南(WIN)

最近接手了一个需要使用 Stable Diffusion 的项目&#xff0c;要重新部署一套 SD 环境。这跟我之前的SD部署又不太一样&#xff0c;部署过程中遇到一些问题&#xff0c;总结出一个比较完美的安装方案&#xff0c;在这里和大家分享一下。 项目地址&#xff1a;https://github.c…

运动控制探针功能详细介绍(CODESYS+SV63N伺服)

汇川AM400PLC和禾川X3E伺服EtherCAT通信 汇川AM400PLC和禾川X3E伺服EtherCAT通信_汇川ethercat通信-CSDN博客文章浏览阅读1.2k次。本文详细介绍了如何使用汇川AM400PLC通过EtherCAT总线与禾川X3E伺服进行通信。包括XML硬件描述文件的下载与安装,EtherCAT总线的启用,从站添加…

ELK日志平台搭建 (最新版)

一、安装 JDK 1. 下载 JDK 21 RPM 包 wget https://download.oracle.com/java/21/latest/jdk-21_linux-x64_bin.rpm2. 安装 JDK 21,使用 rpm 命令安装下载的 RPM 包&#xff1a; sudo rpm -ivh jdk-21_linux-x64_bin.rpm3. 配置环境变量 编辑 /etc/profile 文件以配置 JAVA_HO…

pygame飞机大战

飞机大战 1.main类2.配置类3.游戏主类4.游戏资源类5.资源下载6.游戏效果 1.main类 启动游戏。 from MainWindow import MainWindow if __name__ __main__:appMainWindow()app.run()2.配置类 该类主要存放游戏的各种设置参数。 #窗口尺寸 import random import pygame WIND…

应用架构模式

设计模式 设计模式是指根据通用需求来设计解决方案的模板或蓝图&#xff0c;使用设计模式能够更加有效地解决设计过程中的常见问题。设计模式针对不同的问题域有不同的内涵&#xff0c;主要涉及业务、架构、程序设计等问题域&#xff0c;本文主要讨论架构设计模式。 业务设计模…

el-input输入框需要支持多输入,最后传输给后台的字段值以逗号分割

需求&#xff1a;一个输入框字段需要支持多次输入&#xff0c;最后传输给后台的字段值以逗号分割 解决方案&#xff1a;结合了el-tag组件的动态编辑标签 那块的代码 //子组件 <template><div class"input-multiple-box" idinputMultipleBox><div>…

【新教程】华为昇腾NPU的pytorch环境搭建

1 硬件配置 使用学校的集群&#xff0c;相关配置如下&#xff1a; CPU&#xff1a;鲲鹏920 NPU&#xff1a;昇腾910B 操作系统&#xff1a;openEuler 22.03 2 安装版本 根据昇腾官方gitee上的信息&#xff0c;Pytoch 2.1.0是长期支持版本&#xff0c;因此选择安装这一版本&a…

游戏引擎学习第72天

无论如何&#xff0c;我们今天有一些调试工作要做&#xff0c;因为昨天做了一些修改&#xff0c;结果没有时间进行调试和处理。我们知道自己还有一些需要解决的问题&#xff0c;却没有及时完成&#xff0c;所以我们想继续进行这些调试。对我们来说&#xff0c;拖延调试工作总是…