【问题标题】:I am trying to get data from a row in a table items in which a column is 'itemName' in itemName there a 10 values我正在尝试从表项中的行中获取数据,其中列是 itemName 中的“itemName”,有 10 个值
【发布时间】:2021-12-28 11:24:23
【问题描述】:

现在用户来到我的程序并输入任何值的名称,然后我想显示该值。

System.out.println("enter name of item you want to order");
String userOrder = br.readLine();

Connection con = ConnectionToDB.connection();
String itemName= "select itemName from items";
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(itemName);

while(rs.next())
{
    if (rs.getString("itemName").equals(userOrder))
    {
        System.out.println(rs.getString("itemName"));
    }
    else
    {
        System.out.println("you order wrong item that not present");
    }
}

当用户输入表中执行良好的第一个值并显示第一个值但当用户输入数据库中存在的任何其他值但rs.next() 不起作用并且其他部分执行时。我该如何克服这个问题?

【问题讨论】:

    标签: java if-statement jdbc while-loop resultset


    【解决方案1】:

    为什么你不简单地使用: "select itemName from items WHERE itemName = " + userOrder

    这样你就不需要迭代你刚才的结果集了:

    if (rs.next()){
     //Found
    }
    else {
     //Not Found
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-24
      • 1970-01-01
      • 1970-01-01
      • 2019-06-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多