其他分享
首页 > 其他分享> > could not execute statement长数据做参数报错

could not execute statement长数据做参数报错

作者:互联网

Exception in thread "main" javax.xml.ws.soap.SOAPFaultException: could not execute statement; SQL [n/a]; nested exception is org.hibernate.exception.DataException: could not execute statement
at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:156)

这个问题是在数据库中执行时,数据过长引起的。

可以将数据流的字段修改为mediumtext;

我这里是

ALTER  TABLE systemlog CHANGE parameter parameter mediumtext;

修改完成之后不要急,还需要修改max_allowed_packet;

因为这个时候修改完了设置,其实只是修改完了字段上限值,而数据库的max_allowed_packet默认值为4194304;

也就是说,如果不修改这里,后续还会出现Packet for query is too large (4349894 > 4194304)的问题。

修改方法就是修改my.con(linux)或者my.ini(Windows)文件,将max_allowed_packet 改为 209715200即可;

如果MySQL文件夹里面没有这个配置文件,那么就参考用语句修改。

SET GLOBAL max_allowed_packet = 209715200;(注意一点,这里需要用管理员权限才能修改成功,否则修改完了,也依旧是4194304)

 

 

 

附:

web浏览器已对页面进行了修改提示的解决方法(度娘)

https://jingyan.baidu.com/article/3c48dd34c7eac9e10be358c1.html

标签:execute,max,could,4194304,packet,修改,报错,allowed
来源: https://www.cnblogs.com/wnxx/p/15597583.html