Chinaunix首页 | 论坛 | 博客
  • 博客访问: 124429
  • 博文数量: 14
  • 博客积分: 2000
  • 博客等级: 大尉
  • 技术积分: 540
  • 用 户 组: 普通用户
  • 注册时间: 2007-11-01 23:42
文章分类

全部博文(14)

文章存档

2011年(1)

2008年(13)

我的朋友

分类: Mysql/postgreSQL

2008-05-12 15:42:18

Data truncation: Data truncated for column 'content' at row 1这样的错误是很常见的,特别是使用mysql数据库。 也不知道为什么会出现这样的错误 ,但是我知道怎么修改

出现这样的错误原因:

1.数据库中content字段的长度不够,可能太短了。

2.乱码问题造成的。

解决的办法:

1.加长字段的长度。

2.乱码问题一直是mysql的头疼问题。

mysql5.0+myeclipse4.1+tomcat5.0    全部使用默认编码方式
     (1):插如数据到mysql中:
           在页面上加入本页的编码方式   
         <%@    page    contentType="text/html;charset=gb2312"    % >
   
       2:从mysql中读出数据到页面:
           依然在页面上加如编码方式
     <%@    page    contentType="text/html;charset=gb2312"    % >   
request.setCharacterEncoding("gb2312"); 这里一定设置为gb2312的。
    String sel = request.getParameter("sel");
在书写链接数据库的类中
String url="jdbc:mysql://localhost:3306/zeyu?user=root&password=root&Unicode=true&characterEncoding=UTF-8";

这样你的程序就不会出现乱码问题,所以上面的情况也不会出现,但是我就是不明白,为什么乱码问题能够导致Data truncation: Data truncated for column 'content' at row 1 这样的错误, 呵呵。   能解决就行了。。。

Update:mysql5在phpmyadmin无法连接时执行的语句:
SET PASSWORD FOR ‘root’@'localhost’ = OLD_PASSWORD(’[newpassword]‘);

刚才在导入数据的时候,navicat报错:
Data too long for column ‘ip’ at row 1
提示数据对于ip字段太长

如果数据类型不正确,也会出错,而不像4.*那样自动转换:
sendQuery:Incorrect datetime value: ‘未知’ for column ‘date’ at row 1


如果是数据x (int 11)类型的可能有些奇怪:
insert into a (x) values (’a')
出现:
Out of range value adjusted for column ‘x’ at row 1

insert into a (x) values (’11a’)
出现:
Data truncated for column ‘x’ at row 1

解决办法:
在my.ini里找到
sql-mode=”STRICT_TRANS_TABLES,NO_AUTO_Create_USER,NO_ENGINE_SUBSTITUTION”
把其中的
STRICT_TRANS_TABLES,
去掉,然后重启mysql就ok了

阅读(7690) | 评论(0) | 转发(0) |
0

上一篇:iostat

下一篇:perl中文正则匹配

给主人留下些什么吧!~~