目录

工欲善其事

实践出真知

活跃标签: linux java mysql 待分类 windows js win10 springboot pdf idea docker 电路 esp32 vue macOS nginx git Arduino maven ffmpeg

存档:

X

mysql 记一次自以为是的翻车事件

最近在创建数据库时 打 text 发现还有个几个包含text的类型:

text 65535/3=21845个汉字,约20000,存储空间占用:65535/1024=64K的数据,
tinytext 最大长度255个字节(2^8-1),
longtext 4294967295/3=1431655765个汉字,14亿,存储空间占用:4294967295/1024/1024/1024=4G的数据,
mediumtext 16777215/3=5592405个汉字,560万,存储空间占用:16777215/1024/1024=16M的数据

想着文字不多用text(65535/3=21845个汉字)有点占用空间 就用 tinytext节省一点空间但当时不知道长度。

结果各种报错:⬇️

Caused by: java.sql.SQLException: Incorrect string value: '\xE5\x89\x8D\xE9\x9B\x86...' for column 'description' at row 1

各种搜发现好想又不是编码问题,utf8md4 也设了不管用。。还好最后查了一下找到了问题。

附一下mysql字段类型:

一、字符串类型

类型
范围
说明
 
Char(N) [ binary]
N=1~255 个字节(4.1以下版本)
N=1~65535 个字节(4.1以下版本)
binary :分辨大小写
固定长度 std_name cahr(32) not null
VarChar(N) [binary]
N=1~255 个字节(4.1以下版本)
N=1~65535 个字节(4.1以下版本)

binary :分辨大小写 可变长度 std_address varchar(256)
TinyBlob 最大长度255个字节(2^8-1)
Blob (Binary large objects)储存二进位资料,且有分大小写
memo text not null
TinyText 最大长度255个字节(2^8-1)
Blob 最大长度65535个字节(2^16-1)
 Text 最大长度65535个字节(2^16-1)
MediumBlob 最大长度 16777215 个字节(2^24-1)
MediumText 最大长度 16777215 个字节(2^24-1
LongBlob 最大长度4294967295个字节 (2^32-1)
LongText 最大长度4294967295个字节 (2^32-1)
Enum 集合最大数目为65535 列举(Enumeration),Enum单选、Set复选 sex enum(1,0)
habby set(‘玩电玩’,'睡觉’,'看电影’,'听音乐’)
Set 集合最大数目为64
辨別Null与Not Null :Null为允许储存空值(Null)

二、数字/数值类型

类型
范围
说明
例如
TinyInt[M] [UNSIGNED] -128~127
UNSIGNED : 0~255   num tinyint unsigned
SmallInt[M] [UNSIGNED] -32768~32767
UNSIGNED :0~ 65535    
MediumInt[M] [UNSIGNED] -8388608~8388607
UNSIGNED :0~16777215    
Int[M] [UNSIGNED] -2^31~2^31-1
UNSIGNED : 0~2^32    
BigInt[M] [UNSIGNED] -2^63~2^63-1
UNSIGNED : 0~2^64    
Float [(M,D)]
-3.4E+38~3.4E+38( 约 )
注: M 为长度, D 为小数,Float 4 bytes,Double 8 bytes  
Double [(M,D)] -1.79E+308~1.79E+308( 约 )
Decimal [(M,D)]  
辨別ZeroFill:当宣告关键字ZeroFill为自动填满0,如 000021

三、日期时间类型

类型
范围
说明
Date 日期(yyyy-mm-dd)  
Time 时间(hh🇲🇲ss)  
DateTime 日期与时间組合(yyyy-mm-dd hh🇲🇲ss)  
TimeStamp yyyymmddhhmmss  
Year
年份yyyy
 


标题:mysql 记一次自以为是的翻车事件
作者:llilei
地址:http://solo.llilei.work/articles/2021/03/22/1616423355222.html