gpt4 book ai didi

java - JDBC Java 的问题

转载 作者:行者123 更新时间:2023-12-02 07:30:02 26 4
gpt4 key购买 nike

我在 PostgreSQL 8.4 中有一个表:

DROP TABLE filedata_temp;

CREATE TABLE filedata_temp
(
num serial NOT NULL,
id integer,
kadnum character(25),
deleted character(3),
the_geom geometry,
status_id integer,
CONSTRAINT filedata_temp_pkey PRIMARY KEY (num)
)
WITH (
OIDS=FALSE
);
ALTER TABLE filedata_temp OWNER TO postgres;

简单数据:

enter image description here

在java中我这样做:

Class.forName("org.postgresql.Driver");
Connection ce= null;
ce = DriverManager.getConnection("jdbc:postgresql://localhost:5432/postgis","postgres","123456");
Statement se = null;
se = ce.createStatement();
Integer idn=null;
System.out.println("idnnull= "+idn);
ResultSet id=se.executeQuery("SELECT num FROM filedata_temp ORDER BY num DESC LIMIT 1");
while(id.next()){
idn=id.getInt("num");
System.out.println("query= "+idn);
}
if(idn==null){
idn=1;
}
ce.close();
se.close();
System.out.println("idn= "+idn);

在控制台中我得到这个:

idnnull= null
idn= 1

所以我在控制台中没有得到 System.out.println("query= "+idn); 。这意味着 ResultSet 为空。但是如果我在 PostgreSQL 中进行这个查询,我会得到正常的响应。怎么了?

最佳答案

结果集文档指出,如果新的当前行有效,则方法 next 返回 true;如果没有更多行,则方法 next 返回 false。

所以查询结果不正确。检查您的数据库连接,也许您连接到的其他数据库有空表 filedata_temp 或存在一些相关问题。

关于java - JDBC Java 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13029161/

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