com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'uPwd' at row 1
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3489)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3423)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1936)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2060)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2536)
at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1564)
at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1485)
at com.db.DBManager.executeSql(DBManager.java:41)
at com.dao.user.UserMysqlDao.insertData(UserMysqlDao.java:61)
at com.business.Userbusiness.regUser(Userbusiness.java:21)
at com.servlet.RegServlet.doPost(RegServlet.java:37)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Unknown Source)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3489)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3423)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1936)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2060)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2536)
at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1564)
at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1485)
at com.db.DBManager.executeSql(DBManager.java:41)
at com.dao.user.UserMysqlDao.insertData(UserMysqlDao.java:61)
at com.business.Userbusiness.regUser(Userbusiness.java:21)
at com.servlet.RegServlet.doPost(RegServlet.java:37)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Unknown Source)
解决方案 »
- 急。急。用hibernate查数据库的语句中带有冒号(:)。
- 急需请教关于SSH中Excel数据导入到SQL2005数据库的问题
- 《Struts 2.1权威指南》ant的用法问题
- struts和spring整合
- oracle视图能否做实体和表的关联映射
- Hibernate问题[关于Session缓存与延迟加载策略]
- Web Service 调用和返回值问题
- j2ee服务器下载
- 请教:用jdbc连接数据库,报错“Error establishing socket”,是怎么回事啊?
- resin该如何配置,才能在输入 http://localhost/ 的时候,显示的是我自己的index.jsp,而不是例子
- 【 求救!!!jsp报错】
- JAVA计算时间问题
具体原因应该是数据库blob和clob两种类型给闹的。你google一下吧。import java.sql.Types;import org.hibernate.Hibernate;
import org.hibernate.dialect.MySQLDialect;public class BlobMySQLDialect extends MySQLDialect {
public BlobMySQLDialect(){
super();
registerHibernateType(Types.LONGVARCHAR, Hibernate.TEXT.getName());
}
}
我估计 你写的代码 应该没有错。。而是你在测试的 时候 随便输入的 数字
结果因为 你在mysql 中定义的 那个字段的长度 不足以保存 楼主输入的 而造成的,,
如果 楼主想避免这种情况的话。。可以再前台 用 js 限制 ,,
或者 你把你的mysql 中那个 字段 的 长度 设置的足够大
我遇到过这种问题,而且是经常能遇到,出现这种问题的原因很多
1.建议你设置一下mysql的方言
2.看似好像你在往数据库里插入文件之类的,那么我建议你不要把文件放到数据库里,但并不是上面说的什么“字段过长”之类的原因,具体的你可以查看一下mysql的相关文档,好像是mysql在支持存放文件这里有很多需要注意的地方。库里只存放文件路径,而是把文件放在你的WEBROOT之类的下面。
3.配置文件配置的有问题也会出现这种报错,这会给你造成一个假象,就是其他的字段插入没有问题偏偏这个出现问题,这样你会误认为可能是设计数据库或着是存储过程出现了问题。其实并不然,就是你的配置文件出现了问题,或着是在代码上使用的数据类型。比如你的代码上使用的是int 还是 Integer。配置文件里写的是哪个? 我就是举个例子。
除我说的这些情况之外可能还存在其他的,但是以我遇到过的这些经历来看,我说的第3点占了59%的可能,2占了30%,1占了10%。 上面的那些朋友说的“字段过长”占了1%。 请上面的人不要骂我,事实胜于雄辩。至少我经历过很多次。
LZ GOOD LUCK ......