关于mysql中字段类型为text文本存储json格式数据,字段被截断的问题
背景:
字段类型 MEDIUMTEXT
确定存储内容5548个字符,换算为字节不超过16M
数据库内已经存在更长内容的存储成功,短的内容存储失败
有几率出现截断概率,
日志看入库前参数json都是完整的,入库后内容被截断,导致前端读取数据结构解析失败而报错
发生这种情况的原因有两种可能:
1. 建表时数据库字段设置长度不足
当输入内容的字符长度大于当前字段设置长度时,数据库会自动截断内容
字段类型以下几种:
字符串类型
类型范围说明
Char(N) [ binary]
N=1~255 个字节 binary :分辨大小写
固定长度
std_name cahr(32) not null
VarChar(N) [binary]
N=1~255 个字节 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)
MediumBlo