我正在处理这段代码,但它还没有工作。我已经提出另一个有效的查询,但不是这个。非常感谢帮助。
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection con1 = null;
con1 = DriverManager.getConnection("jdbc:mysql://localhost:3306/itcomplaintsystem", "root", "colbiecaillat");
Statement stmt = con1.createStatement();
ResultSet rs = stmt.executeQuery("SELECT MAX(PHONE) FROM complaints");
if(rs != null)
{
while(rs.next())
{
String cno=rs.getString("C_NO");
out.println(cno);
}
}
stmt.close();
rs.close();
con1.close();
}
catch(Exception e){
out.println(e);
}
答案 0 :(得分:0)
您选择的查询部分没有C_NO,如果您需要最大电话,那么您的查询将是:
SELECT MAX(PHONE) as max_phone FROM complaints
假设手机很长,您的完整代码将是:
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection con1 = null;
con1 = DriverManager.getConnection("jdbc:mysql://localhost:3306/itcomplaintsystem", "root", "colbiecaillat");
Statement stmt = con1.createStatement();
ResultSet rs = stmt.executeQuery("SELECT MAX(PHONE) as max_phone FROM complaints");
if(rs != null)
{
while(rs.next())
{
Long cno=rs.getLong("max_phone");
out.println(cno);
}
}
stmt.close();
rs.close();
con1.close();
}
catch(Exception e){
out.println(e);
}
答案 1 :(得分:0)
在您的查询中
SELECT MAX(PHONE) FROM complaints
您没有为结果指定别名。这些函数通常返回随机或默认列名,因此当您执行
时String cno=rs.getString("C_NO");
结果集上不存在C_NO
列。
要解决此问题,请按此修复您的查询
SELECT MAX(PHONE) as C_NO FROM complaints
使用as C_NO
我将为此列提供您尝试获取的别名。