PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Parameter pernyataan yang disiapkan JDBC di dalam json

Saya sebenarnya menghubungi pengembang JDBC di Github dan setelah beberapa diskusi tampaknya solusi terbaik saat ini adalah menyiapkan pernyataan sebagai berikut:

String query = "SELECT id, data FROM table_name WHERE data->'objects' @> ?::jsonb";

dan berikan seluruh kriteria pencarian sebagai objek JSON yang dirangkai untuk parameter:

PreparedStatement st = connection.prepareStatement(query);
st.setString(1, "[\"id\":" + "id1" + "]");
st.executeQuery();

itu bukan solusi sempurna tetapi tampaknya yang terbaik karena kurangnya kemampuan server. Pada akhirnya tidak terlalu buruk karena (secara teoritis) tidak ada risiko injeksi SQL.

Detail lebih lanjut tentang masalah Github tertaut.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Pernyataan SQL rekursif (Postgresql) - versi yang disederhanakan

  2. cara menghitung saldo di software akuntansi menggunakan fungsi jendela postgres

  3. Kapan / bagaimana fungsi ekspresi nilai default terikat dengan search_path?

  4. Django/PostgreSQL varchar ke UUID

  5. Deploy Postgres11 ke Elastic Beanstalk - Memerlukan /etc/redhat-release