Postgresql db に対して実行する次の SQL コードがあります。
sql"""WITH s AS (
SELECT id
FROM $tableName
WHERE $columnName = $value
), i AS (
INSERT INTO $tableName ($columnName)
SELECT $value
WHERE NOT EXISTS (
SELECT id
FROM $tableName
WHERE $columnName = $value
)
RETURNING id
)
SELECT id
FROM i
UNION ALL
SELECT id
FROM s
"""
update
またはupdateAndRetrieveGeneratedKey
内で使用すると、localTx
が得られorg.postgresql.util.PSQLException: A result was returned when none was expected.
ます。single
内で使用するreadOnly
と、 のようなものが得られます... cannot perform an insert in a read only query
。これについての適切な方法は何ですか?