gpt4 book ai didi

java - postgres : inserting array of custom type

转载 作者:行者123 更新时间:2023-12-02 08:49:58 24 4
gpt4 key购买 nike

我有:


CREATE TYPE Person AS (given_name VARCHAR,
family_name VARCHAR);
CREATE TYPE Contributors AS (directors person[],
actors person[]) ;
CREATE TABLE Catalogue (id serial, contributors Contributors)

我想将以下数组文字插入到目录表的 contributors 字段中:

({},{(Song,Kang-ho),(Omar,Sharif)})

通过JDBC Driver's PGobject有值(value),但我很难做到这一点。

我遇到过这个question我有点明白这个问题了。

我尝试了以下方法:

({}, "{(Song,Kang-ho),(Omar,Sharif)}")

但是我得到了:

ERROR: malformed record literal: "(Song" Detail: Unexpected end of input.

所以我尝试了:

'({},"{(Song,Kang-ho),(Omar,Sharif)}")'

还有:

'({},"{'(Song,Kang-ho)','(Omar,Sharif)'}")'

但我收到此错误:

ERROR: malformed record literal: .... Detail: Missing left parenthesis.

数组文字内嵌套行字段的语法是什么?

最佳答案

很难弄清楚您实际上在尝试什么,因为您只显示了声明的一部分,并且不清楚您显示的部分在整体中的位置。

这有效:

insert into catalogue values  (1,('{}', '{"(Song,Kang-ho)","(Omar,Sharif)"}'));

这也是:

insert into catalogue values  (1,'({},"{""(Song,Kang-ho)"",""(Omar,Sharif)""}")');

关于java - postgres : inserting array of custom type,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60841806/

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