0

我正在使用 Apache DBUtils

Long rowId = queryRunner.insert(sql, new ScalarHandler<Long>(), params);

我的表架构是

CREATE TABLE abc
(
    userid bigint,
    api_key text,
    key_id integer NOT NULL DEFAULT nextval('api_keys_key_id_seq'::regclass),
    CONSTRAINT api_keys_pkey PRIMARY KEY (key_id),
    CONSTRAINT userid_fkey FOREIGN KEY (userid)
    REFERENCES public.users (userid) MATCH SIMPLE
    ON UPDATE NO ACTION ON DELETE NO ACTION
)

问题rowId来自userid作为表的主键的列key_id,我希望插入查询的返回 id 来自key_id列。

4

1 回答 1

0

key_id我遵循的解决方案是使用第一列再次创建表。以这种方式key_id被返回以响应插入查询。可能有一个选项来配置它,但我找不到。

我知道为此再次创建表格不是一个好方法,但任何找到答案的人请分享。

于 2017-08-22T08:28:58.870 回答