Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Masukkan CLOB ke dalam database Oracle

Anda membuatnya menjadi rumit.

Gunakan PreparedStatement dan addBatch() untuk setiap clob dalam daftar Anda:

String sql = "insert  into " + tempTableName + " values (?)";
PreparedStatement stmt = connection.prepareStatement(sql);
for (String query : readQueries) {
  stmt.setCharacterStream(1, new StringReader(query), query.lenght());
  stmt.addBatch();
}
stmt.exececuteBatch();

Tidak perlu main-main dengan escaping strings, tidak ada masalah dengan panjang literal, tidak perlu membuat gumpalan sementara. Dan kemungkinan besar secepat menggunakan satu pernyataan INSERT ALL.

Jika Anda menggunakan driver saat ini (> 10.2) maka saya pikir panggilan setCharacterStream() dan pembuatan Reader juga tidak diperlukan. setString(1, query) simple sederhana kemungkinan besar akan berhasil juga.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Buat pengguna dengan semua hak istimewa di Oracle

  2. Partisi Split Cepat

  3. Bagaimana saya bisa mengeluarkan satu perintah dari baris perintah melalui sql plus?

  4. Spring Batch ORA-08177:tidak dapat membuat serial akses untuk transaksi ini saat menjalankan pekerjaan tunggal, tingkat isolasi SERIALIZED

  5. Kontrol DB Mendekati Kematiannya