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

Bagaimana cara saya mengikat ArrayList ke PreparedStatement di Oracle?

Anda tidak dapat mengikat Daftar ke satu parameter dalam pernyataan yang disiapkan.

Hasilkan SQL dengan penanda parameter untuk setiap elemen dalam daftar, misalnya:

SELECT NAME FROM ITEM WHERE ID IN (?, ?, ?, ?)

Meskipun Anda akan membuat pernyataan baru untuk setiap kueri, saya tetap menyarankan menggunakan PreparedStatement . Jika daftar Anda berisi String contoh, Anda akan mendapatkan pelolosan yang diperlukan untuk melindungi dari injeksi SQL.

Tetapi meskipun itu adalah tipe yang aman, seperti Integer objek, beberapa driver atau middleware dapat menyimpan PreparedStatements , dan kembalikan instance yang di-cache jika formulir yang sama diminta. Tentu saja, beberapa pengujian akan diperlukan. Jika ukuran daftar Anda sangat bervariasi, Anda akan memiliki banyak pernyataan yang berbeda, dan cache yang diimplementasikan dengan buruk mungkin tidak siap untuk menangani begitu banyak.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle SQL membandingkan catatan dalam tabel

  2. Beberapa nilai baris menjadi satu baris

  3. Menggunakan Oracle JDeveloper 12c dengan Oracle Database, Bagian 2

  4. Konversi tanggal ke string Oracle

  5. SQL yang sangat sederhana Bukan ekspresi GROUP BY - Oracle