Image 将图像上载到数据库时出错
Image 将图像上载到数据库时出错,image,exception,file-upload,jdbc,upload,Image,Exception,File Upload,Jdbc,Upload,当我尝试使用下面的代码上载图像时,我遇到以下错误:java.sql.SQLException:ORA-01460:未实现或请求的转换不合理 File image=新文件(“D:/”+文件名); preparedStatement=connection.prepareStatement(查询); 编制报表。设置字符串(1,“Ayush”); fis=新文件输入流(图像); preparedStatement.setBinaryStream(2,(InputStream)fis,(int)(imag
当我尝试使用下面的代码上载图像时,我遇到以下错误:java.sql.SQLException:ORA-01460:未实现或请求的转换不合理
File image=新文件(“D:/”+文件名);
preparedStatement=connection.prepareStatement(查询);
编制报表。设置字符串(1,“Ayush”);
fis=新文件输入流(图像);
preparedStatement.setBinaryStream(2,(InputStream)fis,(int)(image.length());
int s=preparedStatement.executeUpdate();
如果(s>0){
System.out.println(“上传成功!”);
flag=true;
}
否则{
System.out.println(“无法上传图像”);
flag=false;
}
请帮帮我
数据库脚本:
创建表ESTMT\u保存\u图像
(
名称VARCHAR2(50),
图像斑点
)其第一个原因是不兼容的转换,但在看到您的DB脚本后,我假设您没有在脚本中进行任何转换。
ORA-01460还有其他原因:
不兼容的字符集可能导致ORA-01460故障
使用SQL Developer,尝试向超过4000字节的绑定变量值传递字符串可能会导致ORA-01460
使用ODP,从10.2客户端和10.2 ODP移动到11.1客户端和11.1.0.6.10 ODP的用户报告了ORA-01460错误。这是一个bug,应该通过将ODP修补到最新版本来修复。
对于一些用户来说,这是通过获得最新的jdbc驱动程序解决的。看看这些链接:是的,你是对的。我的应用程序正在成功地将大小小于4KB的图像插入数据库,但如果我想存储更大大小的图像,该怎么办?因为我不太擅长:)但我认为您需要将其存储为二进制数据。请参阅,我敢肯定它会帮到您:)