日期:2014-05-17  浏览次数:20973 次

org.hibernate.exception.DataException: Could not execute JDBC batch update
今天向mysql中插入数据出现很奇怪问题
User p1=new User();
p1.setName("测试数据");
p1.setPassword("12345");
System.out.println("insert suceess");
当p1.setName("")中不为中文,运行正常,当为中文就出错org.hibernate.exception.DataException: Could not execute JDBC batch update
说明p1.setName("")为mysql中user表对应字段的值


------解决方案--------------------
你的数据库是什么字符集的,还有你的配置文件是什么样的
------解决方案--------------------
我之前遇到过Mysql数据库插入中文出错的问题,但是只是出现乱码,可以正常执行结束啊。
你可以从以下几方面查查看看。
1.你安装数据库时,是否更改字符集为GBK.
2.最好采用最新的驱动包,好像是5.1.6吧,具体的记不清了。
3..你的name属性长度设置足够长吗?是不是长度越界了?
你看一下详细的报错文件,应该能查出问题所在。
祝你好运啦。呵呵!