Oracle
 sql >> база данни >  >> RDS >> Oracle

как да вмъкна огромен файл в BLOB (Oracle), без да зареждам целия файл в паметта?

За тези навън...

Ето процеса, за да го направите:

stmt.execute ("INSERT INTO my_blob_table VALUES ('row1', empty_blob())");
BLOB blob;
cmd = "SELECT * FROM my_blob_table WHERE X='row1' FOR UPDATE";
ResultSet rset = stmt.executeQuery(cmd);
rset.next();
BLOB blob = ((OracleResultSet)rset).getBLOB(2);
File binaryFile = new File("john.gif");
System.out.println("john.gif length = " + binaryFile.length());
FileInputStream instream = new FileInputStream(binaryFile);
OutputStream outstream = blob.setBinaryStream(1L);
int size = blob.getBufferSize();
byte[] buffer = new byte[size];
int length = -1;

Източник:http://docs.oracle.com /cd/B19306_01/java.102/b14355/oralob.htm#CHDFHHHG



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. LINQ към XYZ полиморфизъм?

  2. Как да разрешите ORA-29283:невалидна файлова операция

  3. как да вмъкна картина или изображение в база данни на oracle?

  4. Генериране на случаен низ с главни и малки букви и цифри в Oracle

  5. CachedRowSet по-бавен от ResultSet?