java - 复合类型Postgres的GetString?

标签 java sql postgresql jdbc

我创建了这个表:

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)
)

indirizzo 类型在哪里

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中获取String是:resultset.getString("citta")

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

相关文章:

java - tomcat - 找不到请求的资源错误

java - 将现有项目导入eclipse时,Maven根pom.xml标记为红色

c# - 如何在 C# 中分区或拆分 DataTable?

mysql - 在 select 语句中填充字段 - MySQL

java - 从Excel表中读取数据并写入同一个Excel表中

mysql - 两列 "OR"查询速度与单列 "DOUBLE THE ROWS"查询速度

python - 使用 RedShift 作为额外的 Django 数据库

SQL:计算自上次成功以来的天数

python:如何使用内存数据库测试我的数据库模型?

java - 使用 Spring 作为请求主体的 ZonedDateTime 列表