【发布时间】:2017-04-02 15:57:11
【问题描述】:
我正在为一个班级做一个项目,并且是使用 JDBC 的初学者。一方面,我的导师希望我们“提供一个查询菜单,允许用户输入查询命令并从数据库中检索信息”。我已经进行了很多研究,但无法找到一种方法来做到这一点。我见过的大多数示例已经知道用户将要查询什么。如果我允许用户查询任何内容,我怎样才能返回正确的信息?我到目前为止的代码如下。
System.out.println("What table do you wish to query?");
table = scan.nextLine();
System.out.println("What values do you wish to query? Type them separated by commas. If you wish to select all values, please type a *.");
values = scan.nextLine();
System.out.println("Type the conditions for your WHERE clause, excluding the keyword WHERE.");
conditions = scan.nextLine();
query = "SELECT " + values + " FROM " + table + "WHERE " + conditions;
try {
stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(query);
while (rs.next()) {
if(values != "*")
String results = rs.getString(values);
}
我被卡住了,因为我不知道用户要查询什么,所以我不知道在 while 循环中放什么,就像在这个例子中他们知道用户正在寻找姓氏一样。
rs = stmt.executeQuery("SELECT Lname FROM Customers WHERE Snum = 2001");
while ( rs.next() ) {
String lastName = rs.getString("Lname");
System.out.println(lastName);
}
任何帮助或建议将不胜感激。
【问题讨论】:
-
刚刚在这里得到了一个 ping。是否发布和删除了重复的标注?
-
@Drew 是的,我认为发布了更具体的答案,所以..