sql >> Database teknologi >  >> RDS >> Oracle

Hvordan skriver/opdaterer man Oracle blob på en pålidelig måde?

Det er meget nemmere:

PreparedStatement pstmt =
  conn.prepareStatement("update blob_table set blob = ? where id = ?");
File blob = new File("/path/to/picture.png");
FileInputStream in = new FileInputStream(blob);

// the cast to int is necessary because with JDBC 4 there is 
// also a version of this method with a (int, long) 
// but that is not implemented by Oracle
pstmt.setBinaryStream(1, in, (int)blob.length()); 

pstmt.setInt(2, 42);  // set the PK value
pstmt.executeUpdate();
conn.commit();
pstmt.close();

Det fungerer på samme måde, når du bruger en INSERT-sætning. Intet behov for empty_blob() og en anden opdateringserklæring.



  1. Doktrin (i symfony-projekt) kan ikke forbindes gennem stikkontakt

  2. PHP mysql søg i flere tabeller ved hjælp af et nøgleord

  3. Fejl på ORACLE trigger

  4. Hvad er standardværdien for VARCHAR2 i Oracle?