Je ne pense pas que vous puissiez mettre à jour ou insérer dans un BLOB/CLOB avec JDBC en une seule étape (pour les données> 4k). De cet exemple d'Oracle , il semble que vous deviez :
- Insérez un LOB vide avec la fonction SQL
empty_clob()
- Sélectionnez pour mettre à jour le LOB que vous avez inséré
- obtenir le LOB en java avec
ResultSet.getBlob()
puis récupérez le flux de sortie avecblob.setBinaryStream
(depuisoracle.sql.BLOB.getBinaryOutputStream()
est obsolète) - écrire dans ce flux de sortie
- fermez le flux de sortie lorsque vous avez terminé
Vous feriez quelque chose de similaire en Pl/SQL (SELECT FOR UPDATE un LOB, puis écrivez-y).