gpt4 book ai didi

postgresql - INSERT...RETURNING 与 output_expression

转载 作者:行者123 更新时间:2023-11-29 13:47:28 27 4
gpt4 key购买 nike

PostgresQL INSERTs允许使用插入列的任何子集返回 output_expression,但我无法获得将此功能与 jOOQ 一起使用的正确语法。

这是我想要实现的 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 准确获取我想要的变量类型?

P.D.:我正在使用 jOOQ 3.9.2

最佳答案

你可以使用.fetch().into(String.class)

关于postgresql - INSERT...RETURNING 与 output_expression,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46064757/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com