程序在执行到
if (ors.next())
{
oracle.sql.BLOB blob=ors.getBLOB("filebody");
//java.io.OutputStream outstream=blob.getBinaryOutputStream();
//outstream.write(a);
int j=blob.putBytes(1,a);
System.out.println("j:"+j);
conn.commit();
ors.close();
}中的int j=blob.putBytes(1,a);语句时,
发生如下错误:file length::30720read itotal::30720java.io.IOException: ORA-22920: 未锁定含有 LOB 值的行
ORA-06512: 在"SYS.DBMS_LOB", line 700
ORA-06512: 在line 1
at oracle.jdbc.dbaccess.DBError.SQLToIOException(DBError.java:531) at oracle.jdbc.driver.OracleBlobOutputStream.flushBuffer(OracleBlobOutputStream.java:179) at oracle.jdbc.driver.OracleBlobOutputStream.write(OracleBlobOutputStream.java:125)errror :java.io.IOException: ORA-22920: 未锁定含有 LOB 值的行
ORA-06512: 在"SYS.DBMS_LOB", line 700
ORA-06512: 在line 1
at java.io.OutputStream.write(OutputStream.java:61) at beelink.com.orablob.AccessBlob.main(AccessBlob.java:74)
if (ors.next())
{
oracle.sql.BLOB blob=ors.getBLOB("filebody");
//java.io.OutputStream outstream=blob.getBinaryOutputStream();
//outstream.write(a);
int j=blob.putBytes(1,a);
System.out.println("j:"+j);
conn.commit();
ors.close();
}中的int j=blob.putBytes(1,a);语句时,
发生如下错误:file length::30720read itotal::30720java.io.IOException: ORA-22920: 未锁定含有 LOB 值的行
ORA-06512: 在"SYS.DBMS_LOB", line 700
ORA-06512: 在line 1
at oracle.jdbc.dbaccess.DBError.SQLToIOException(DBError.java:531) at oracle.jdbc.driver.OracleBlobOutputStream.flushBuffer(OracleBlobOutputStream.java:179) at oracle.jdbc.driver.OracleBlobOutputStream.write(OracleBlobOutputStream.java:125)errror :java.io.IOException: ORA-22920: 未锁定含有 LOB 值的行
ORA-06512: 在"SYS.DBMS_LOB", line 700
ORA-06512: 在line 1
at java.io.OutputStream.write(OutputStream.java:61) at beelink.com.orablob.AccessBlob.main(AccessBlob.java:74)
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货