Definícia funkcie:
CREATE OR REPLACE FUNCTION insert_json(
p_name character varying,
p_content jsonb)
Po ukončení volania Java sa končí výnimka SQL o potrebe odovzdávania parametrov ...
PreparedStatement ps = helper.prepareStatement(conn, "SELECT * FROM insert_json(?, ?)");
ps.setString(1, name);
PGobject pgo = new PGobject();
pgo.setType("jsonb");
pgo.setValue(content);
ps.setObject(2, pgo);
PostgreSQL 9.4
odpovede:
0 pre odpoveď č. 1Áno, musíte vytvoriť PGobject a vložiť, ale s niekoľkými zmenami:
Najprv:
PGobject pgo = new PGobject();
pgo.setType("jsonb");
pgo.setValue(content);
Po druhé:
jdbcTemplate.update("SELECT yourFunction(?, ?)",
new Object[] {text, pgo},
new int[] {Types.VARCHAR, Types.OTHER });