sql >> Database >  >> RDS >> Oracle

Hoe plaats ik grote (of op zijn minst niet-triviale) BLOB's in Oracle met JDBC?

Ik denk niet dat je een BLOB/CLOB met JDBC in één stap kunt updaten of invoegen in een BLOB/CLOB (voor data> 4k). Van dit voorbeeld van Oracle , het lijkt erop dat u het volgende moet doen:

  1. Voeg een lege LOB in met de SQL-functie empty_clob()
  2. Selecteer voor update de LOB die je hebt ingevoegd
  3. verkrijg de LOB in java met ResultSet.getBlob() haal vervolgens de uitvoerstroom op met blob.setBinaryStream (sinds oracle.sql.BLOB.getBinaryOutputStream() is verouderd)
  4. schrijf naar deze uitvoerstroom
  5. Sluit de uitvoerstroom als u klaar bent

U zou iets soortgelijks doen in Pl/SQL (SELECTEER EEN LOB VOOR UPDATE en schrijf ernaar).



  1. IntegrityError:onderscheid maken tussen unieke beperking en niet-nulschendingen

  2. Postgres db-ontwerp Normaliseer tabellen of gebruik matrixkolommen

  3. Hoe gebruik ik speciale tekens in MySQL-kolomnamen?

  4. Genereer MD5 hash-string met T-SQL