我正在使用Java,Weblogic,postgressql和sql2o。
我从名为folder的表中选择。
select * from folder
在pgadmin中运行正常,但是,我尝试使用Java的每个变体都给出了以下异常: 引起:org.postgresql.util.PSQLException:错误:关系"文件夹"不存在
我已尝试过各种变体:public.folder,"文件夹",文件夹和"公共"。"文件夹" ...没有任何作用
这是我的代码:
public Folder get(long folderId) {
String sql = "select * from \"public\".\"folder\" where folder_id = 1";
try (Connection connection = helper.open()) {
Query query = connection.createQuery(sql);
return populate(query.executeAndFetchFirst(Folder.class));
}
}
编辑:这是创建脚本
CREATE TABLE public.folder
(
folder_id bigint NOT NULL,
[...]
CONSTRAINT folder_pkey PRIMARY KEY (folder_id)
)
WITH (
OIDS=FALSE
);
ALTER TABLE public.folder
OWNER TO postgres;
对我做错的任何见解?
答案 0 :(得分:0)
这是一个误导性的错误消息。问题的根源是在weblogic的数据源中,数据库名称被列为xxx而不是xxxdb。
使用正确的数据库名称重新创建数据源可解决此问题。