我创建了这个表:

CREATE TABLE public.luogo
(
id_luogo integer NOT NULL DEFAULT nextval('luogo_id_luogo_seq'::regclass),
tipo character varying(30) NOT NULL,
indirizzo indirizzo,
CONSTRAINT luogo_pk PRIMARY KEY (id_luogo)
)

印第里佐式
CREATE TYPE public.indirizzo AS
(
citta character varying(50),
via character varying(50),
cap integer,
civico integer
);

所以我使用JDBC,我需要这个查询
"SELECT * FROM luogo WHERE id_luogo= '"+variable+"'";

问题是resultset.getstring("indirizzo")显然返回一个类似于:“(value,value,value)”的字符串。如何作为字符串获取indirizzo的奇异参数?

最佳答案

正确的SQL语法是:

"SELECT id_luogo,(indirizzo).citta FROM luogo"

在Java中获取字符串的方法是:resultset.get String(“citta”)

关于java - 复合类型Postgres的GetString?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51789999/

10-10 08:40