PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

JDBC Gotowy parametr instrukcji wewnątrz json

Właściwie skontaktowałem się z programistami JDBC na Github a po kilku dyskusjach wydaje się, że obecnie najlepszym rozwiązaniem jest posiadanie przygotowanego oświadczenia w następujący sposób:

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

i przekaż całe kryteria wyszukiwania jako skrócony obiekt JSON dla parametru:

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

nie jest to idealne rozwiązanie, ale wydaje się najlepsze z możliwych ze względu na brak możliwości serwera. Na koniec nie jest tak źle, ponieważ (teoretycznie) nie ma ryzyka wstrzyknięcia SQL.

Więcej szczegółów na temat powiązanego problemu z Github.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. „O” w ORDBMS:Dziedziczenie PostgreSQL

  2. Różnica Postgresql między datami w dwóch kolumnach?

  3. Jak uzyskać typ podstawowy tablicy w postgresie przez jdbc?

  4. Dlaczego ta instrukcja ActiveRecord nie działa na serwerze, ale nie na konsoli?

  5. Połączone 2 kolumny w jedną kolumnę SQL