日期:2014-05-18  浏览次数:20592 次

为什么我在mysql中存文本可以,但不能存图片
我用的是Hibernate+struts  
mysql5   数据库,数据字段为LongBlob,
存600KB的文本,没有问题,
但是存219KB的JPG图片,报如下错误:

Caused   by:   java.sql.BatchUpdateException:   Syntax   error   or   access   violation,     message   from   server:   "You   have   an   error   in   your   SQL   syntax;   check   the   manual   that   corresponds   to   your   MySQL   server   version   for   the   right   syntax   to   use   near   '4庳汶M\\cq顰泉V{鶐#8?? 鹰(層憾乼豤妀彌撆 OLP_? 豽QJl?)#昋?/鋝Bm '   at   line   1 "


------解决方案--------------------
毕业设计不会做、害怕答辩通不过……

不要紧,有我们会帮你解决这一切!我们提供专业的计算机毕业设计和课程设计。我们可以根据您的要求,特别为您量身定做毕业设计。并且会在程序代码里写出很详细的注释,同时也能帮您学习编程。
有需要者登录http://xdqbysj.10mb.cn/
QQ:
客服一(16376208)

客服二(57293694)


------解决方案--------------------
图片要先插入然后再修改的,你是这样的吗?直接插入不行的。。先insert一个空的,再update那个字段
------解决方案--------------------
你先在选择图片文件时不要选择有中文名的文件或文件夹,你看你上面都有乱码出来了,还能成功吗
------解决方案--------------------
我觉得可能是你sql 语法写的有问题,你再看看.

------解决方案--------------------
保存路径吧!!

------解决方案--------------------
坚持用hibernate,有什么办法呢,用newxy不写一行代码多爽.

用newxy方法如下:

<%@ page contentType= "text/html; charset=GBK " %>
<%@ taglib uri= "/WEB-INF/newxy-html.tld " prefix= "nhtml "%>
<%@ taglib uri= "/WEB-INF/newxy-logic.tld " prefix= "nlogic "%>

<nlogic:action1 id= "act1 " formName= "fileForm "/>

<nhtml:form action= " " formName= "fileForm " enctype= "multipart/form-data ">
数据库表名: <input type= "text " name= "_table " size= "40 "/> <br />
说明: <input type= "text " name= "explain " size= "40 "/> <br />
不大于1024K: <nhtml:file property= "field1 " size= "40 " maxSize= "1024 "/> <br />
不大于1024K: <nhtml:file property= "field2 " size= "40 " maxSize= "1024 "/> <br />
</nhtml:form>
<nhtml:button actionId= "act1 " method= "update "/>

------解决方案--------------------
?Mh?s??y囮=+qdP ' at line 1--你的SQL语句问题.
把代码贴出来看一下.
------解决方案--------------------
学习
------解决方案--------------------
你不会把它映射成string了
------解决方案--------------------
路径问题文件传输的时候最好全部是英文
SQL语句报的错,就是路径引起的。