报错:ERROR 1406 (22001): Data too long for column ‘comment’ at row xx
原因:'comment’列xx行的内容太长,超过了我们预先定义表的长度
方法:如果一开始定义的是char/varchar类型,那么可以扩展类型的大小,但是建议用可变长度的数据类型,如text、mediumtext或longtext
MySQL数据类型
|
含义
|
char(n)
|
固定长度,最多255个字符
|
varchar(n)
|
固定长度,最多65535个字符
|
tinytext
|
可变长度,最多255个字符
|
text
|
可变长度,最多65535个字符
|
mediumtext
|
可变长度,最多2的24次方-1个字符
|
longtext
|
可变长度,最多2的32次方-1个字符
|
方法:
1.查询当前sql的模式: select @@sql_mode;
2.设置sql的模式: set sql_mode=`ANSI`;
mode
|
作用
|
空
|
最宽松的模式, 即使有错误既不会报错也不会有警告️
|
ANSI
|
宽松模式,对插入数据进行校验,如果不符合定义类型或长度,对数据类型调整或截断保存,报warning警告
|
TRADITIONAL
|
严格模式,当向mysql数据库插入数据时,进行数据的严格校验,保证错误数据不能插入,报error错误。
|
STRICT_TRANS_TABLES
|
严格模式,进行数据的严格校验,错误数据不能插入,报error错误
|
import py
mysql
#创建连接
con = py
mysql
.connect(host='localhost',user='root',password='123456',port=3306,
data
base='zhy')
#创建游标对象
cur = con.curson()
#编写查询的
sql
语句
sql
= 'select * from t_student'
cur.execute(
sql
)
print(查询成功)
students = cur.fetchall()
print(students)
except Exception as
这个错误信息表明,在插入行时,你尝试插入的值在
数据库
表中的某一列中太长了,超过了其允许的最大长度。这意味着你必须将值调整为在该列中存储的长度。这可能是由于你尝试将一个过长的字符串插入到了只允许短字符串的列中,或者你尝试将一个过大的数字插入到了只允许较小数字的列中。
而这一次我遇到的问题是第三个页面乱码,所以此篇文章主要围绕页面乱码来讲。主要是各种解决办法的集合以及解决过程中出现的新问题和其解决方法。
其他两种乱码情况均可在网上搜到。
原因分析:
页面乱码,主要与
数据库
编码格式有关。
完成这样项目首先要在
数据库
导入
两张表,
导入
两个
sql
文件后,由于我并没有发现表及表的内容有任何缺少,而没有注意到我第二个
sql
文件
导入
并不是完全成功的,
最近
导入
数据
的时候,总是
报错
:java.
sql
.
SQL
Exception:
Data
truncation:
Data
too
long
for
column
'***' at
row
1 Query,查询好久,才发现是
数据库
的字符集出错。整理了一下,解决方案为一下几种.。
第一种解决办法:
出自:http://www.blogjava.net/zoninge/archive/2...
今天设计了一张表 其中一个字段我设置的类型是 text 类型的 ,按照正常的情况下text 是不限制长度的,因此插入了一段很长的txt内容 ,结果出现了 悲剧性的事情,提示了
数据
太长
Data
too
long
for
column
'......' at
row
1这就很尴尬了,百度了半天,有去改配置的,有去改编码的,最后没有一个有效的。
那么好吧,还是先去看看
数据
结构吧
tex...
在前端输入一串
数据
后台
数据库
进行crud操作时,报出
Data
too
long
for
column
‘’ at
row
很有可能是你的
数据库
表里的类型大小设置的太小。
我们举一个常见的注册为例
注册一个10个字符串长度的用户名(默认注册表已填完整无误,且用户名没被占用)
发现后台报出异常
再到
数据库
通过desc table_name; 查看发现vachar为6,
在把varchar长度修...
可用平台: Windows
当前版本: v3.7
EMS
Data
Import:trade_mark: for
MySQL
是一款交叉平台的
数据库
工具,它用于快速将
数据
导入
至您的
MySQL
:registered:表中,支持的
导入
文件包括MS Access (只支持Windows:registered: 版本), DBF, XML, TXT 和 CSV。它提供
导入
参数调整,包括:为所有的字段指定源
数据
格式、为选定的字段指定目标
数据
格式、更新
数据库
选项、跳过的记录条数等。
Data
Import for
MySQL
包含了一个操作向导,您可以直观的设定所有从不同文件
导入
数据
的选项,它还提供了命令行工具,您只需一步操作便可执行
数据
导入
。
解决出现Incorrect integer value: ” for
column
‘id’ at
row
1的问题
今天在学习Python的过程中操作
数据库
,遇到了一个问题,执行
sql
语句插入
数据
的时候
报错
Incorrect integer value: ” for
column
‘id’ at
row
1
我的
数据库
设计是这样的:
一个很简单的用户信息表,其中ID是int类型,自动填充的主键,其他两个非主键,我执行的insert语句是这样的:
mysql
.db_insert(“insert into userinfo values(”,’sven’,’111222′,’sven@q