如何使用java从Oracle检索Long
我有一个数据库,其中一个长数据类型存储了一个图像, 我想检索它并将其写入图像文件 我尝试使用getBytes方法,并使用编写了一个文件,它返回为损坏的图像 我还尝试使用getBinarystream并使用fos进行写入,我在一个图像文件中写入了它,但得到了相同的损坏错误 代码:如何使用java从Oracle检索Long,java,oracle,Java,Oracle,我有一个数据库,其中一个长数据类型存储了一个图像, 我想检索它并将其写入图像文件 我尝试使用getBytes方法,并使用编写了一个文件,它返回为损坏的图像 我还尝试使用getBinarystream并使用fos进行写入,我在一个图像文件中写入了它,但得到了相同的损坏错误 代码: 要存储二进制数据,应该使用LONG_RAW或BLOB。LONG类型用于基于字符(文本)的数据。您有包含图像的LONG类型吗?为什么Long而不是像blob这样的二进制类型?另外,您发布的代码不是Java。您确定Long列
要存储二进制数据,应该使用LONG_RAW或BLOB。LONG类型用于基于字符(文本)的数据。您有包含图像的
LONG
类型吗?为什么Long
而不是像blob这样的二进制类型?另外,您发布的代码不是Java。您确定Long
列包含有效的图像吗?如果写入错误,则无论您读取的二进制数据是否正确,您都将获得无效的图像。是的,长文件包含有效的签名图像,另外,Tom回答您的问题这是一个旧的体系结构,我们使用了很长时间来存储图像,我发布的只是一个用于检索图像的代码片段。如何在很长的时间内存储图像?格式是什么?
InputStream is = RS.getBinaryStream(1);
FileOutputStream fos = new FileOutputStream ("image.bmp");
Int c;
While((c=is.read())!=-1)
{
fos.write(c);
}
fos.close;