现在的情况是通过一个数据库导出个别张表,这几张表中有blob类型的字段,导出是用程序存储成文本文件的,然后将文本文件传输到其他机器上,导入到另外一个数据库。刚开始blob字段导出没有问题。问题是导入时程序读取文本文件时blob自动读取成string类型的,通过insert语句塞参数的时候,blob类型的字段把string给他,程序提示错误,一直在想string怎么转成blob类型的,网上搜了,没有结果。
后来看网上blob类型的字段都是通过输入输出流处理的,可程序塞参数不知道怎么用这种方法,偶然间想起来,用byte 试一下,果然奏效了,哈哈
代码如下:
if(Integer.parseInt(types[i])==Types.BLOB){
pstmt.setBytes(i+1, objs.get(i).toString().getBytes());
}else{
pstmt.setObject(i+1, objs.get(i));
}