[MySQL]MySQL数据类型

news2024/9/28 15:27:58

文章目录

  • 数据类型分类
  • 数值类型
    • tinyint类型
    • bit类型
    • float类型
    • decimal类型
  • 字符串类型
    • char类型
    • varchar类型
    • char和varchar对比
    • 日期和时间类型
    • enum和set类型

数据类型分类

MySQL中,支持各种各样的类型,比如表示数值的整型浮点型,文本、二进制类型、时间日期型和String类型。

在这里插入图片描述


数值类型

在这里插入图片描述

tinyint类型

tinyint类型用于存放数值比较小的整数,取值范围-128~127

数值越界测试:

mysql> create table t1 (
    -> data tinyint
    -> )engine=innodb default charset=utf8;
Query OK, 0 rows affected (0.02 sec)

mysql> desc t1;
+-------+------------+------+-----+---------+-------+
| Field | Type       | Null | Key | Default | Extra |
+-------+------------+------+-----+---------+-------+
| data  | tinyint(4) | YES  |     | NULL    |       |
+-------+------------+------+-----+---------+-------+
1 row in set (0.00 sec)

mysql> insert into t1 (data) values (1);
Query OK, 1 row affected (0.00 sec)

mysql> insert into t1 (data) values (128);
ERROR 1264 (22003): Out of range value for column 'data' at row 1
mysql> insert into t1 (data) values (-129);
ERROR 1264 (22003): Out of range value for column 'data' at row 1

mysql> select * from t1;
+------+
| data |
+------+
|    1 |
+------+
1 row in set (0.00 sec)

在C/C++中,如果赋值超出类型范围,会发生对应的数据类型截断,编译器不会报错,但是在MySQL中,数据必须具有很强的明确性,超出数据类型的范围,MySQL不允许插入数据。
所以在MySQL中,数据类型是一种约束。

说明:

  • 在MySQL中,整型可以指定是有符号的和无符号的,默认是有符号的。
  • 可以通过UNSIGNED来说明某个字段是无符号的。

案例:

mysql> create table t2 (
    -> data tinyint unsigned 
    -> )engine=innodb default charset=utf8;
Query OK, 0 rows affected (0.02 sec)

mysql> desc t2;
+-------+---------------------+------+-----+---------+-------+
| Field | Type                | Null | Key | Default | Extra |
+-------+---------------------+------+-----+---------+-------+
| data  | tinyint(3) unsigned | YES  |     | NULL    |       |
+-------+---------------------+------+-----+---------+-------+
1 row in set (0.00 sec)

mysql> insert into t2 (data) values (255);
Query OK, 1 row affected (0.00 sec)

mysql> insert into t2 (data) values (-1);
ERROR 1264 (22003): Out of range value for column 'data' at row 1

mysql> select * from t2;
+------+
| data |
+------+
|  255 |
+------+
1 row in set (0.00 sec)

bit类型

基本语法:

bit[(M)] : 位字段类型。M表示每个值的位数,范围从164。如果M被忽略,默认为1

举例:

mysql> create table t3 (
    -> id int,
    -> data bit(8)
    -> )engine=innodb default charset=utf8;
Query OK, 0 rows affected (0.02 sec)

mysql> desc t3;
+-------+---------+------+-----+---------+-------+
| Field | Type    | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| id    | int(11) | YES  |     | NULL    |       |
| data  | bit(8)  | YES  |     | NULL    |       |
+-------+---------+------+-----+---------+-------+
2 rows in set (0.00 sec)

mysql> insert into t3 (id, data) values (10, 10);
Query OK, 1 row affected (0.00 sec)

mysql> select * from t3;
+------+------+
| id   | data |
+------+------+
|   10 | 
+------+------+
1 row in set (0.00 sec)

通过上面的案例,我们发现bit字段在显示时不是直接显示数值大小的。

bit字段在显示时,是按照ASCII码对应的值显示的。

mysql> insert into t3 (id, data) values (65, 65);
Query OK, 1 row affected (0.00 sec)

mysql> select * from t3;
+------+------+
| id   | data |
+------+------+
|   10 | 
|   65 | A    |
+------+------+
2 rows in set (0.00 sec)

bit可以表示只存放1或0的数值需求,这样可以节省空间。

mysql> create table t4 (
    -> data bit(1)
    -> )engine=innodb default charset=utf8;
Query OK, 0 rows affected (0.02 sec)

mysql> desc t4;
+-------+--------+------+-----+---------+-------+
| Field | Type   | Null | Key | Default | Extra |
+-------+--------+------+-----+---------+-------+
| data  | bit(1) | YES  |     | NULL    |       |
+-------+--------+------+-----+---------+-------+
1 row in set (0.00 sec)

mysql> insert into t4 (data) values (1);
Query OK, 1 row affected (0.00 sec)

mysql> insert into t4 (data) values (0);
Query OK, 1 row affected (0.00 sec)

mysql> insert into t4 (data) values (2);
ERROR 1406 (22001): Data too long for column 'data' at row 1

float类型

基本语法:

float[(m, d)] [unsigned] : M指定显示长度,d指定小数位数,占用空间4个字节

案例:
float(4,2)表示的范围是-99.99 ~ 99.99,MySQL在保存值时会进行四舍五入。

mysql> create table t5 (
    -> data float(4, 2)
    -> )engine=innodb default charset=utf8;
Query OK, 0 rows affected (0.02 sec)

mysql> desc t5;
+-------+------------+------+-----+---------+-------+
| Field | Type       | Null | Key | Default | Extra |
+-------+------------+------+-----+---------+-------+
| data  | float(4,2) | YES  |     | NULL    |       |
+-------+------------+------+-----+---------+-------+
1 row in set (0.00 sec)

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

mysql> insert into t5 (data) values (-99.99);
Query OK, 1 row affected (0.01 sec)

mysql> insert into t5 (data) values (-99.991);
Query OK, 1 row affected (0.01 sec)

mysql> insert into t5 (data) values (-99.996);
ERROR 1264 (22003): Out of range value for column 'data' at row 1
mysql> select * from t5;
+--------+
| data   |
+--------+
|  99.99 |
| -99.99 |
| -99.99 |
+--------+
3 rows in set (0.00 sec)

案例:
如果定义的是float(4,2) unsigned 这时,因为把它指定为无符号的数,范围是 0 ~ 99.99

mysql> create table t6 (
    -> data float(4,2) unsigned 
    -> )engine=innodb default charset=utf8;
Query OK, 0 rows affected (0.01 sec)

mysql> desc t6;
+-------+---------------------+------+-----+---------+-------+
| Field | Type                | Null | Key | Default | Extra |
+-------+---------------------+------+-----+---------+-------+
| data  | float(4,2) unsigned | YES  |     | NULL    |       |
+-------+---------------------+------+-----+---------+-------+
1 row in set (0.00 sec)

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

mysql> insert into t6 (data) values (99.99);
Query OK, 1 row affected (0.00 sec)

mysql> insert into t6 (data) values (-1);
ERROR 1264 (22003): Out of range value for column 'data' at row 1
mysql> insert into t6 (data) values (100);
ERROR 1264 (22003): Out of range value for column 'data' at row 1

decimal类型

基本语法:

decimal(m, d) [unsigned] : 定点数m指定长度,d表示小数点的位数
  • decimal(5,2) 表示的范围是 -999.99 ~ 999.99
  • decimal(5,2) unsigned 表示的范围 0 ~ 999.99
  • decimal和float很像,但是有区别: float和decimal表示的精度不一样

案例:

mysql> create table t7 (
    -> data1 float(10,8),
    -> data2 decimal(10,8)
    -> )engine=innodb default charset=utf8;
Query OK, 0 rows affected (0.02 sec)

mysql> desc t7;
+-------+---------------+------+-----+---------+-------+
| Field | Type          | Null | Key | Default | Extra |
+-------+---------------+------+-----+---------+-------+
| data1 | float(10,8)   | YES  |     | NULL    |       |
| data2 | decimal(10,8) | YES  |     | NULL    |       |
+-------+---------------+------+-----+---------+-------+
2 rows in set (0.00 sec)

mysql> insert into t7 (data1, data2) values (23.12345612, 23.12345612);
Query OK, 1 row affected (0.00 sec)

mysql> select * from t7;
+-------------+-------------+
| data1       | data2       |
+-------------+-------------+
| 23.12345695 | 23.12345612 |
+-------------+-------------+
1 row in set (0.00 sec)

通过上面的案例,我们可以发现decimal的精度更准确,因此当我们需要高精度储存浮点数时,优先使用decimal。

  • float表示的精度大约是7位。
  • decimal整数最大位数m为65。支持小数最大位数d是30。如果d被省略,默认为0.如果m被省略,默认是10。

字符串类型

char类型

基本语法:

char(L): 固定长度字符串,L是可以存储的长度,单位为字符,最大长度值可以为255

案例:

mysql> create table t8 (
    -> data char(2)
    -> )engine=innodb default charset=utf8;
Query OK, 0 rows affected (0.02 sec)

mysql> desc t8;
+-------+---------+------+-----+---------+-------+
| Field | Type    | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| data  | char(2) | YES  |     | NULL    |       |
+-------+---------+------+-----+---------+-------+
1 row in set (0.01 sec)

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

mysql> insert into t8 (data) values ('好的');
Query OK, 1 row affected (0.00 sec)

mysql> insert into t8 (data) values ('中国人');
ERROR 1406 (22001): Data too long for column 'data' at row 1

mysql> select * from t8;
+--------+
| data   |
+--------+
| OK     |
| 好的   |
+--------+
2 rows in set (0.00 sec)

char(2) 表示可以存放两个字符,可以是字母或汉字,但是不能超过2个, 最多只能是255

mysql> create table t8 (
    -> data char(256)
    -> )engine=innodb default charset-utf8;
ERROR 1074 (42000): Column length too big for column 'data' (max = 255); use BLOB or TEXT instead

varchar类型

基本语法:

varchar(L): 可变长度字符串,L表示字符长度,最大长度65535个字节

案例:

mysql> create table t9 (
    -> data varchar(5)
    -> )engine=innodb default charset=utf8;
Query OK, 0 rows affected (0.03 sec)

mysql> desc t9;
+-------+------------+------+-----+---------+-------+
| Field | Type       | Null | Key | Default | Extra |
+-------+------------+------+-----+---------+-------+
| data  | varchar(5) | YES  |     | NULL    |       |
+-------+------------+------+-----+---------+-------+
1 row in set (0.00 sec)

mysql> insert into t9 value ('hello');
Query OK, 1 row affected (0.00 sec)

mysql> insert into t9 value ('你好,世界');
Query OK, 1 row affected (0.00 sec)

mysql> select * from t9;
+-----------------+
| data            |
+-----------------+
| hello           |
| 你好,世界      |
+-----------------+
2 rows in set (0.00 sec)

关于varchar(len),len到底是多大,这个len值,和表的编码密切相关:

  • varchar长度可以指定为0到65535之间的值,但是有1 - 3 个字节用于记录数据大小,所以说有效字节数是65532。
  • 当我们的表的编码是utf8时,varchar(n)的参数n最大值是65532/3=21844(因为utf中,一个字符占用3个字节),如果编码是gbk,varchar(n)的参数n最大是65532/2=32766(因为gbk中,一个字符占用2字节)。
mysql> create table t10 (
    -> data varchar(21845)
    -> )engine=innodb default charset=utf8;
ERROR 1118 (42000): Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs

mysql> create table t10 ( data varchar(21844) )engine=innodb default charset=utf8;
Query OK, 0 rows affected (0.02 sec)

mysql> desc t10;
+-------+----------------+------+-----+---------+-------+
| Field | Type           | Null | Key | Default | Extra |
+-------+----------------+------+-----+---------+-------+
| data  | varchar(21844) | YES  |     | NULL    |       |
+-------+----------------+------+-----+---------+-------+
1 row in set (0.00 sec)

char和varchar对比

在这里插入图片描述

如何选择定长或变长字符串?

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

日期和时间类型

常用的日期有如下三个:

  • date :日期 ‘yyyy-mm-dd’ ,占用三字节
  • datetime 时间日期格式 ‘yyyy-mm-dd HH:ii:ss’ 表示范围从 1000 到 9999 ,占用八字节
  • timestamp :时间戳,从1970年开始的 yyyy-mm-dd HH:ii:ss 格式和 datetime 完全一致,占用四字节

案例:

mysql> create table t11 (
    -> d1 date,
    -> d2 datetime,
    -> d3 timestamp
    -> )engine=innodb default charset=utf8;
Query OK, 0 rows affected (0.02 sec)

mysql> desc t11;
+-------+-----------+------+-----+-------------------+-----------------------------+
| Field | Type      | Null | Key | Default           | Extra                       |
+-------+-----------+------+-----+-------------------+-----------------------------+
| d1    | date      | YES  |     | NULL              |                             |
| d2    | datetime  | YES  |     | NULL              |                             |
| d3    | timestamp | NO   |     | CURRENT_TIMESTAMP | on update CURRENT_TIMESTAMP |
+-------+-----------+------+-----+-------------------+-----------------------------+
3 rows in set (0.00 sec)

mysql> insert into t11 (d1, d2) values ('2023-1-29', '2023-1-29 10:00:00');
Query OK, 1 row affected (0.00 sec)

mysql> insert into t11 (d1, d2) values ('2023-1-30', '2023-1-30 11:00:00');
Query OK, 1 row affected (0.00 sec)

mysql> select * from t11;
+------------+---------------------+---------------------+
| d1         | d2                  | d3                  |
+------------+---------------------+---------------------+
| 2023-01-29 | 2023-01-29 10:00:00 | 2023-01-29 21:45:20 |
| 2023-01-30 | 2023-01-30 11:00:00 | 2023-01-29 21:45:29 |
+------------+---------------------+---------------------+
2 rows in set (0.00 sec)

在添加数据时,timestamp时间戳会自动添加当前时间,修改数据时同理也会修改当前时间。

mysql> select * from t11;
+------------+---------------------+---------------------+
| d1         | d2                  | d3                  |
+------------+---------------------+---------------------+
| 2023-01-29 | 2023-01-29 10:00:00 | 2023-01-29 21:45:20 |
| 2023-01-30 | 2023-01-30 11:00:00 | 2023-01-29 21:45:29 |
+------------+---------------------+---------------------+
2 rows in set (0.00 sec)

mysql> update t11 set d1='2023-1-31';
Query OK, 2 rows affected (0.01 sec)
Rows matched: 2  Changed: 2  Warnings: 0

mysql> select * from t11;
+------------+---------------------+---------------------+
| d1         | d2                  | d3                  |
+------------+---------------------+---------------------+
| 2023-01-31 | 2023-01-29 10:00:00 | 2023-01-29 21:47:55 |
| 2023-01-31 | 2023-01-30 11:00:00 | 2023-01-29 21:47:55 |
+------------+---------------------+---------------------+
2 rows in set (0.00 sec)

enum和set类型

基本语法:

enum:枚举,“单选”类型;
enum('选项1','选项2','选项3',...);

该设定只是提供了若干个选项的值,最终一个单元格中,实际只存储了其中一个值;而且出于效率考虑,这些值实际存储的是“数字”,因为这些选项的每个选项值依次对应如下数字:1,2,3,…最多65535个;当我们添加枚举值时,也可以添加对应的数字编号。

set:集合,“多选”类型;
set('选项值1','选项值2','选项值3', ...);

该设定只是提供了若干个选项的值,最终一个单元格中,设计可存储了其中任意多个值;而且出于效率考虑,这些值实际存储的是“数字”,因为这些选项的每个选项值依次对应如下数字:1,2,4,8,16,32,… 最多64个。

说明:不建议在添加枚举值,集合值的时候采用数字的方式,因为不利于阅读。

案例:
有一个调查表votes,需要调查人的喜好, (登山,游泳,篮球,武术)中选择(可以多选),性别(男,女)单选。

mysql> create table votes (
    -> name varchar(20),
    -> hobby set('登山','游泳','武术','篮球'),
    -> gender enum('男','女')
    -> )engine=innodb default charset=utf8;
Query OK, 0 rows affected (0.02 sec)

mysql> desc votes;
+--------+------------------------------------------+------+-----+---------+-------+
| Field  | Type                                     | Null | Key | Default | Extra |
+--------+------------------------------------------+------+-----+---------+-------+
| name   | varchar(20)                              | YES  |     | NULL    |       |
| hobby  | set('登山','游泳','武术','篮球')         | YES  |     | NULL    |       |
| gender | enum('男','女')                          | YES  |     | NULL    |       |
+--------+------------------------------------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

插入数据:

mysql> insert into votes (name, hobby, gender) values ('Jame', '游泳,武术', '男');
Query OK, 1 row affected (0.00 sec)

mysql> insert into votes (name, hobby, gender) values ('Lisa', '游泳,登山', '女');
Query OK, 1 row affected (0.00 sec)

mysql> insert into votes (name, hobby, gender) values ('Jack', '游泳,篮球,武术', '男');
Query OK, 1 row affected (0.01 sec)

mysql> insert into votes (name, hobby, gender) values ('Maria', '游泳', '女');
Query OK, 1 row affected (0.00 sec)

mysql> select * from votes;
+-------+----------------------+--------+
| name  | hobby                | gender |
+-------+----------------------+--------+
| Jame  | 游泳,武术            ||
| Lisa  | 登山,游泳            ||
| Jack  | 游泳,武术,篮球       ||
| Maria | 游泳                 ||
+-------+----------------------+--------+
4 rows in set (0.00 sec)

有如上数据,想查找所有喜欢游泳的人:

mysql> select * from votes where hobby='游泳';
+-------+--------+--------+
| name  | hobby  | gender |
+-------+--------+--------+
| Maria | 游泳   ||
+-------+--------+--------+
1 row in set (0.00 sec)

我们会发现我们只能查找到兴趣爱好只有游泳的人,不能查询到兴趣爱好中含有游泳的人。

集合查询使用find_ in_ set函数:
find_in_set(sub,str_list) :如果 sub 在 str_list 中,则返回下标;如果不在,返回0; str_list 用逗号分
隔的字符串:

示例:

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

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

在votes表中查询喜欢游泳的人:

mysql> select * from votes where find_in_set('游泳', hobby);
+-------+----------------------+--------+
| name  | hobby                | gender |
+-------+----------------------+--------+
| Jame  | 游泳,武术            ||
| Lisa  | 登山,游泳            ||
| Jack  | 游泳,武术,篮球       ||
| Maria | 游泳                 ||
+-------+----------------------+--------+
4 rows in set (0.00 sec)

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

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

相关文章

【密码学】 一篇文章讲透数字签名

【密码学】 一篇文章讲透数字签名 数字签名介绍 数字签名(又称公钥数字签名)是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。它是一种类似写在纸上的普通的物理签名…

问题解决:Excel中依据某一列数据进行匹配

问题描述Excel处理时,常常需要从一个大表里,按照条件提取子集。需要我们按照某一序列为标准,匹配筛选出有效信息,案例如下:依据名称匹配销售额。解决方法使用函数:VLOOKUP(lookup_value,table_array,col_in…

Elasticsearch7.8.0版本进阶——自定义分析器

目录一、自定义分析器的概述二、自定义的分析器的测试示例一、自定义分析器的概述 Elasticsearch 带有一些现成的分析器,然而在分析器上 Elasticsearch 真正的强大之 处在于,你可以通过在一个适合你的特定数据的设置之中组合字符过滤器、分词器、词汇单 …

刚来的薪资20k,是我的2倍,我是真的卷不过,真的太变态了

在这个行业爬摸滚打5年了,从最开始点点点的功能测试到现在到现在成为高级测试,工资也翻了几倍,简单的说几句吧 改变的开始 之所以改变的原因很简单,我快被新来的卷死了,新来的本科是某211的,干劲十足&…

Python为CANoe工程添加/删除DBC文件

前面文章我们对于通过COM来实现打开CANoe、导入CANoe配置工程、导入执行文件、启动CANoe软件和执行脚本;但是这只能完成最基本的功能调用,在实际得到使用过程中,特别是各家在推的CI/CD以及平台化,仅仅是实现这些功能是完全不够用的;比如dbc的添加和删除,这是我们非常必要…

【洛谷 P1563】[NOIP2016 提高组] 玩具谜题(模拟+结构体数组+指针)

[NOIP2016 提高组] 玩具谜题 题目背景 NOIP2016 提高组 D1T1 题目描述 小南有一套可爱的玩具小人, 它们各有不同的职业。 有一天, 这些玩具小人把小南的眼镜藏了起来。 小南发现玩具小人们围成了一个圈,它们有的面朝圈内,有的面朝圈外。如下图: 这时 singer 告诉小南一个谜…

Python变量的定义和使用

定义:变量就是计算机内存中存储某些数据的位置的名称 形象理解变量就是一个存放东西的容器,该容器的名字就叫做变量,容器存放的东西就是变量的值 变量的组成: 标识:标识对象所储存的内存地址,使用内置函数i…

Redis的持久化方式

Redis支持两种方式的持久化,一种是RDB方式、另一种是AOF(append-only-file)方式,两种持久化方式可以单独使用其中一种,也可以将这两种方式结合使用。 •RDB:根据指定的规则“定时”将内存中的数据存储在硬…

Android中使用GRPC简明教程

引言 Android作为一个开发平台,本身是使用java进行封装的,因此java可以调用的库,在Android中同样可以进行调用,这样就使得Android设备具有丰富的功能,可以进行各种类型的开发。 这篇文章就介绍如何在Android设备中使…

Spring Cloud Nacos源码讲解(七)- Nacos客户端服务订阅机制的核心流程

Nacos客户端服务订阅机制的核心流程 ​ 说起Nacos的服务订阅机制,大家会觉得比较难理解,那我们就来详细分析一下,那我们先从Nacos订阅的概述说起 Nacos订阅概述 ​ Nacos的订阅机制,如果用一句话来描述就是:Nacos客…

十四、项目实战二(CORS、同源策略、cookie跨域)

项目实战二 需求 以前后端分离的方式实现学生的增删改查操作 学生列表接口 url:/students/ 请求方法:get 参数: 格式:查询参数 参数名类型是否必传说明pageint否页码,默认为1sizeinit否每页数据条数默认为10namestr否根据姓…

SpringBoot+HttpClient+JsonPath提取A接口返回值作为参数调用B接口

前言 在做java接口自动化中,我们常常需要依赖多个接口,A接口依赖B,C,D接口的响应作为请求参数;或者URL中的参数是从其他接口中提取返回值作获取参数这是必不可少的。那么怎么实现呢?下面就来介绍多业务依赖…

大数据技术之Hive(三)函数

hive有大量内置函数,大致可分为:单行函数、聚合函数、炸裂函数、窗口函数。查看内置函数show functions;查看内置函数用法desc function upper;查看内置函数详细信息desc function extended upper;一、单行函数单行函数的特点是一进一出,输入…

Kubernetes之服务的基本管理

svc是kubernetes最核心的概念,通过创建Service,可以为一组具有相同功能的容器应用提供一个统一的入口地址,并将请求进行负载分发到后端的各个容器应用上。pod生命周期短不稳定,pod异常后新生成的pod的IP会发生变化,通过…

JSD2212班第二次串讲-面向对象阶段

1. 概述 系统介绍一下接下来阶段要学习的内容: 1.JAVA: 1.1 java语言基础 1.2 java面向对象阶段(很重要!起的承上启下!!) 1.3 API阶段(Application Interface )学会看字…

Spring Cloud @RefreshScope 原理分析:代理类的创建

背景 前面我们知道,被 RefreshScope 注解的实例,在扫描生成 BeanDefiniton 时,被偷龙转凤了:注册了两个 Bean 定义,一个 beanName 同名、类型是 LockedScopedProxyFactoryBean.class 代理工厂 Bean,一个 s…

6-Java中新建一个文件、目录、路径

文章目录前言1-文件、目录、路径2-在当前路径下创建一个文件3-在当前路径下创建一个文件夹(目录)3.1 测试1-路径已经存在3.2 测试2-路径不存在3.2 创建不存在的路径并新建文件3.3 删除已存在的文件并新建4-总结前言 学习Java中如何新建文件、目录、路径…

ASE40N50SH-ASEMI高压MOS管ASE40N50SH

编辑-Z ASE40N50SH在TO-247封装里的静态漏极源导通电阻(RDS(ON))为100mΩ,是一款N沟道高压MOS管。ASE40N50SH的最大脉冲正向电流ISM为160A,零栅极电压漏极电流(IDSS)为1uA,其工作时耐温度范围为-55~150摄氏度。ASE40N…

【架构师】零基础到精通——架构发展

博客昵称:架构师Cool 最喜欢的座右铭:一以贯之的努力,不得懈怠的人生。 作者简介:一名Coder,软件设计师/鸿蒙高级工程师认证,在备战高级架构师/系统分析师,欢迎关注小弟! 博主小留言…

PHP - ChatGpt API 接入 ,代码,亲测!(最简单!)

由于最近ChatGpt 大火,但是门槛来说是对于大家最头疼的环节, 我自己也先开发了一个个人小程序!大家可以访问使用下, 由此ChatGpt 有一个API 可以仅供大伙对接 让我来说下资质: 1:首先要搞得到一个 ChatGp…