1406 - Data too long for column ‘deintro‘ at row 1报错原因以及解决办法

2023-10-25 00:21

本文主要是介绍1406 - Data too long for column ‘deintro‘ at row 1报错原因以及解决办法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

今天用MySql数据库打算插入几个数据,大约有几千个汉字左右,插入的时候出现了这个错误。
1406 - Data too long for column ‘deintro’ at row 1

问题原因:

开始设置的数据类型为varchar,要输入的数据较多
插入的数据比数据类型大,会被截断时,就会报错,无法插入。

解决办法:

后来我把varchar数据类型换成了mediumtext。
这样就不会报错了。

新的问题:

问题一

mediumtext类型长度无法更改,数据表中长度为0,改成别的值保存仍为0。

答:这个类型是在另外开辟了一个存储空间保存的,表中是存了一个指针指向这个外部存储空间的问题。存储的长度也是固定的。

问题二

虽然可以插入文字了,但是插入的汉字有字数限制,仅仅可存储700多个字符。
答:这个还没解决

问题三

数据我存进去了,显示的也是汉字,但是我把数据库表格关闭重新打开后,数据统一变成了(BLOB)
在这里插入图片描述
答:后来我查了一下。text字段如果使用utf8_bin编码,数据库会显示blob,并且会乱码。我看了一下自己的也确实用的UTF8-bin编码。
解决办法:把utf8-bin改成utf8_general_ci就可以了

另外在这里科普一下utf8_unicode_ci、utf8_general_ci和utf8_bin这几个的区别:

utf8__bin是用二进制存储并比较,区别大小写,存储二进制内容时使用
utf8_general_ci:校对速度快,但准确度稍差,使用中英文时使用
utf8_unicode_ci:准确度高,但校对速度稍慢,使用德法俄等外语时使用
这样就一目了然了。

这篇关于1406 - Data too long for column ‘deintro‘ at row 1报错原因以及解决办法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/278749

相关文章

javax.net.ssl.SSLHandshakeException:异常原因及解决方案

《javax.net.ssl.SSLHandshakeException:异常原因及解决方案》javax.net.ssl.SSLHandshakeException是一个SSL握手异常,通常在建立SS... 目录报错原因在程序中绕过服务器的安全验证注意点最后多说一句报错原因一般出现这种问题是因为目标服务器

qt5cored.dll报错怎么解决? 电脑qt5cored.dll文件丢失修复技巧

《qt5cored.dll报错怎么解决?电脑qt5cored.dll文件丢失修复技巧》在进行软件安装或运行程序时,有时会遇到由于找不到qt5core.dll,无法继续执行代码,这个问题可能是由于该文... 遇到qt5cored.dll文件错误时,可能会导致基于 Qt 开发的应用程序无法正常运行或启动。这种错

java中long的一些常见用法

《java中long的一些常见用法》在Java中,long是一种基本数据类型,用于表示长整型数值,接下来通过本文给大家介绍java中long的一些常见用法,感兴趣的朋友一起看看吧... 在Java中,long是一种基本数据类型,用于表示长整型数值。它的取值范围比int更大,从-922337203685477

java Long 与long之间的转换流程

《javaLong与long之间的转换流程》Long类提供了一些方法,用于在long和其他数据类型(如String)之间进行转换,本文将详细介绍如何在Java中实现Long和long之间的转换,感... 目录概述流程步骤1:将long转换为Long对象步骤2:将Longhttp://www.cppcns.c

MyBatis Plus 中 update_time 字段自动填充失效的原因分析及解决方案(最新整理)

《MyBatisPlus中update_time字段自动填充失效的原因分析及解决方案(最新整理)》在使用MyBatisPlus时,通常我们会在数据库表中设置create_time和update... 目录前言一、问题现象二、原因分析三、总结:常见原因与解决方法对照表四、推荐写法前言在使用 MyBATis

IDEA中Maven Dependencies出现红色波浪线的原因及解决方法

《IDEA中MavenDependencies出现红色波浪线的原因及解决方法》在使用IntelliJIDEA开发Java项目时,尤其是基于Maven的项目,您可能会遇到MavenDependenci... 目录一、问题概述二、解决步骤2.1 检查 Maven 配置2.2 更新 Maven 项目2.3 清理本

Java空指针异常NullPointerException的原因与解决方案

《Java空指针异常NullPointerException的原因与解决方案》在Java开发中,NullPointerException(空指针异常)是最常见的运行时异常之一,通常发生在程序尝试访问或... 目录一、空指针异常产生的原因1. 变量未初始化2. 对象引用被显式置为null3. 方法返回null

MySQL启动报错:InnoDB表空间丢失问题及解决方法

《MySQL启动报错:InnoDB表空间丢失问题及解决方法》在启动MySQL时,遇到了InnoDB:Tablespace5975wasnotfound,该错误表明MySQL在启动过程中无法找到指定的s... 目录mysql 启动报错:InnoDB 表空间丢失问题及解决方法错误分析解决方案1. 启用 inno

IDEA下"File is read-only"可能原因分析及"找不到或无法加载主类"的问题

《IDEA下Fileisread-only可能原因分析及找不到或无法加载主类的问题》:本文主要介绍IDEA下Fileisread-only可能原因分析及找不到或无法加载主类的问题,具有很好的参... 目录1.File is read-only”可能原因2.“找不到或无法加载主类”问题的解决总结1.File

使用@Cacheable注解Redis时Redis宕机或其他原因连不上继续调用原方法的解决方案

《使用@Cacheable注解Redis时Redis宕机或其他原因连不上继续调用原方法的解决方案》在SpringBoot应用中,我们经常使用​​@Cacheable​​注解来缓存数据,以提高应用的性能... 目录@Cacheable注解Redis时,Redis宕机或其他原因连不上,继续调用原方法的解决方案1