当前位置: 首页 > 知识库问答 >
问题:

无法继续使用ResultSet

蒋何平
2023-03-14

我有MySQL数据库,有以房间号、可用性、clean_status、价格和room_type命名的列。列可用性的数据为可用或不可用,列clean_status的数据为脏或已清理。我试图从数据库获取数据,如果选择的房间是'不可用'或'脏',我想显示错误消息,说明'房间应该是可用的或清洁之前添加客户'。我已经使用ResultSet并执行工作。早些时候它显示了错误消息。我修改了代码并使其可执行。但是它没有给出任何错误信息,数据库列中的数据也没有改变。我想是因为ResultSet。有人能帮我吗?

 try {
                        connection = new MySQLConnection();
                    } catch (Exception ae) {
                        if (ae != null) {
                            JOptionPane.showMessageDialog(null, "Error Connection To Database");
                        }
                    }
                    String avai ="select availability from rooms where roomno='"+roomno+"'";
                    String clean ="select clean_status from rooms where roomno='"+roomno+"'";

                       try {
                           this.see = connection.s.executeQuery(clean);
                       }
                       catch (SQLException ex) {
                           ex.printStackTrace();
                       }
                    try {
                        this.conn = new MySQLConnection();
                      this.se = connection.s.executeQuery(avai);
                    } catch (SQLException ex) {
                        ex.printStackTrace();
                    }
                        if (se.equals("Available") && see.equals("Cleaned")){
                            String str = "insert into customer values('" +id + "','" +mobileno +"','" +name +"','" +gender+"','"+country+"','" +roomno+"','"+checkedin+"','" +deposit+"')";
                            try {
                                connection.s.executeUpdate(str);
                                JOptionPane.showMessageDialog(null, "Data Added To Database");
                            }
                            catch (Exception eu) {
                                eu.printStackTrace();
                                JOptionPane.showMessageDialog(this, "Error In Database Table", "Message", JOptionPane.ERROR_MESSAGE);
                            }
                        }
                        else if (se.equals("Not Available") || see.equals("Dirty")){
                            JOptionPane.showMessageDialog(null,"Room Is Dirty or Not Available");
                        }

共有1个答案

宋经赋
2023-03-14

从您的代码se acd看到各自的ResultSet获得,我不知道如何ResultSet.equals工作,但我建议您使用以下

while(see.next())
{
String clean=see.getString("clean_status");
}
while(se.next())
{
String avail=see.getString("availability");
}

然后检查输出。

但是,如果错误仍然存在,请检查表中的availability(可用性)和clean_status(清除状态)值是否有任何前导空格或尾随空格,这有时可能是一个问题。

 类似资料:
  • 我的代码首先将我登录到PayPal,然后登录到eBay并导航到“支付费用”页面,然后使用PayPal结账。最后一个“继续”按钮我无法单击/提交。我尝试了xpath、id和类。我甚至尝试发送TAB 7x,直到按下“继续”按钮,然后发送Enter,但没有成功。 我已经找到了这个讨论,但我不知道如何让它为我工作。PayPal沙箱签出“继续按钮”-无法定位元素:-C#网络驱动程序

  • 无法使用Selenium单击链接-WebDriver:Chrome:Win7 下面是我检查按钮时的代码: span class=“UI-Button-Text”>span class=“Button-Content”>继续 我试过以下几种方法,都行不通:

  • 我正在使用的来创建更好的NER模型。根据这篇文章,我使用了mark g发布的代码: 它也会运行,但我的输出会在以下时间停止: 但在帖子中的例子中,应该进一步如下: 有人能帮我解决这个问题,这样我就可以生成一个模型了吗?我找了很多,但找不到任何关于它的好文件。非常感谢,谢谢。

  • 跳过当前循环的剩余部分并继续下一次循环。在各种循环中都是有效的。 Continue [, LoopLabel] [AHK_L 59+]:如果指定了,则 LoopLabel 表示此语句所应用的循环;通过标签名或嵌套层级的数值。如果省略或为 1,此语句应用于它所在的最内层循环。LoopLabel 必须为常量,不支持变量和表达式。如果指定标签,则它必须直接指向循环命令。 Continue 的行为如同直接

  • 简介 本章介绍的是Scheme中特有的数据类型——继续(Continuation)。由于其他程序设计语言并没有这种数据类型,因此它难于理解。当下,你并不需要彻底理解清楚,只需要大致了解。 我会讲解广义的继续和简短地介绍Continuation-Passing-Style(CPS),然后再讲解Scheme中的继续。我认为通过这种方式理解继续会比较容易。 广义继续 继续是在返回到顶层(Top leve

  • 我有类似于以下代码的代码: 但它会向我的浏览器抛出以下错误: 未捕获的语法错误:非法的继续语句 是否可以像我正在尝试而不抛出错误一样包含一个?