【问题详细描述】
1. 创建表,表中某字段 “session_id” 的数据类型为 varchar(100) 且该字段的编码格式为 utf8
2. 往该字段插入字符串为“60b2a2861c63e2c553fdb44ebef9b015”的值,插入失败并报错 Data truncation:Data too long for column 'session_id'
【解决办法】
1. 插入后,实际存储的字节数取决于列的字符集。如果字符集是UTF 8,MySQL 将需要每个字符存3个字节。因此插入值实际需要存储字符串长度 * 3个字节,如果插入值的实际存储字节数大于定义的字段长度(问题描述中的 varchar(100)),则会报错 Data too long
2. 建议修改字符的定义长度,修改长度大于 varchar(100) ,使数据能正常插入