gpt4 book ai didi

java - 将 SELECT COUNT(*) 查询结果分配给 Java 变量

转载 作者:可可西里 更新时间:2023-11-01 07:50:16 25 4
gpt4 key购买 nike

我一直在将 SELECT COUNT(*) 查询的结果分配给 Java 变量时遇到问题。我正在将查询结果分配给 ResultSet。然后,我试图检索计数值并将其分配给一个变量。尝试执行此操作时出现错误。

这是我的代码:

ResultSet rc1 = null;
int rowCount1;
Statement stat = conn.createStatement();

rc1 = stat.executeQuery("SELECT COUNT(*) AS rowcount1
FROM Signal WHERE SignalId = 1;");

if (rc1.next())
rowCount1 = rc1.getInt("rowcount1");

然后我得到以下错误:

java.sql.SQLException: no such column: 'rowcount1'
at org.sqlite.RS.findColumn(RS.java:116)
at org.sqlite.RS.getInt(RS.java:219)

显然,问题出在尝试将 AS 之后的内容分配给变量时。我找不到很多关于包含 AS 的查询的信息。在我不计算的查询中,我遇到了同样的错误。例如,如果我有以下代码:

ResultSet rp1 = null;
int rowCount1 = 0;
Statement stat = conn.createStatement();

rp1 = stat.executeQuery("SELECT Signal AS Sig1
FROM Observations WHERE SignalId = 1;");

if (rp1.next())
rowCount1 = rp1.getInt("rowcount1");

我在前面的代码中遇到了同样的错误(没有这样的列:rowCount1)。我做错了什么?我确保我正在阅读的表格包含正确的值,因此查询必须为真。

最佳答案

只需使用 rp1.getInt(1) —— 这将结果集中的第一列作为 int 返回——这就是你想要的。

如果您有更多值,请使用 rp1.getInt(2) 获取第二个值等...

关于java - 将 SELECT COUNT(*) 查询结果分配给 Java 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5794186/

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