Si l'utilisation de Java est une option, vous pouvez transmettre un objet InputStream à un PreparedStatement pour remplir un champ Blob. Quelque chose comme ça, la gestion des exceptions et tous les autres éléments à ajouter :
Connection con = someDataSource.getConnection();
String sql = "INSERT INTO MY_TABLE(MY_BLOB) VALUES(?)";
PreparedStatement ps = con.prepareStatement(sql);
InputStream fis = new FileInputStream("MyBigFile.big");
ps.setBlob(1, fis);
ps.executeUpdate();
Je pense que Java le fera en utilisant des tampons et ne chargera pas tout le fichier en mémoire.