これは、PostgreSQLがクライアントドライバーやORMと相互作用して、文字列として理解できないものをすべて送信する、厳密なキャストの問題のさらに別の変形です。
setObjectを使用する必要があります Types.OTHERを使用 、IIRC。
ps.setObject(2, foos.get(i).getName(), Types.OTHER);
どのPgJDBCがタイプunknownのバインドパラメータとして送信する必要があるか 。 PgJDBCを直接使用しているため、幸いなことに、これは簡単に処理できます。人々がORMレイヤーを使用しているとき、それは本当に苦痛です。
参照:
- Macaddr/Inetタイプのpostgresinslick
- postgreSQLJSON列をHibernate値タイプにマッピングする
- https://www.postgresql.org/ message-id / example@sqldat.comom
背景用。