PostgresQL INSERTs允許使用插入列的任何子集返回output_expression
,但我無法獲得與jOOQ一起使用此功能的語法。插入...使用output_expression返回
這是PL/pgSQL的等價物是什麼我想要實現:
CREATE TABLE my_table (i INTEGER, t TEXT);
DO
$$DECLARE my_var TEXT;
BEGIN
INSERT INTO my_table(i, t)
VALUES(1, 'hello')
RETURNING (t) INTO my_var;
RAISE NOTICE 'Inserted text was --> % <--', my_var;
END$$;
但我發現這個問題是這樣的語法無效在jOOQ:
String retVal = using(configuration)
.insertInto(MY_TABLE,
MY_TABLE.I,
MY_TABLE.T)
.values(i, t)
.returning(MY_TABLE.T)
.fetchInto(String.class);
我已經最接近一直在使用fetchOne
得到一個完整的MyTableRecord
和挑選我想要的領域。有沒有另一種方法告訴JOOQ準確地獲取我想要的變量類型?
PD:我使用jOOQ 3.9.2
這是在路線圖上:https://github.com/jOOQ/jOOQ/issues/3185 –