java想数据库中导入图片
报错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后面是一通乱码
Connection conn=null;
PreparedStatement ps=null;
ResultSet rs = null;
try{
//建立连接
conn=TestUtil.getConnection();
//创建语句
String sql="insert into table2(big1) values(?)";
ps=(PreparedStatement) conn.prepareStatement(sql);
File file=new File("t5 .jpg");
BufferedInputStream in=new BufferedInputStream(new FileInputStream(file));
ps.setBinaryStream(1, in,(int)file.length());
int i=ps.executeUpdate();
in.close();
System.out.println(i);
}finally{
TestUtil.free(rs, ps, conn);
}
是红色的那句话有问题吗?请问怎么解决啊?应该不是关键字的问题。
------解决方案--------------------楼主单独执行这条语句有没有报什么异常?!
------解决方案--------------------原来是乱码啊。。
楼主在数据库的url后(在getConnection方法中)加上"?useUnicode=true&characterEncoding=utf-8"
就ok了。。。。。
------解决方案--------------------红色的sql语句没有问题,除非你表明列名写错了
请参考2楼
------解决方案--------------------sql没问题,不过mysql的驱动可能有问题.每个jdbc驱动所能支持的blob类型是不同的,楼主最好到官网上看人家驱动对blob的操作支持。
------解决方案--------------------加字符过滤器
------解决方案--------------------可能是驱动有问题,参考:http://yin-bp.iteye.com/blog/727285
------解决方案--------------------为什么不用uplodify呢??上传文件到特定位置,数据库插入图片地址就行