如何调用咨询的结果并将其放入文本框? MYSQL + Java的

问题描述:

我的文本框被称为pruebamax如何调用咨询的结果并将其放入文本框? MYSQL + Java的

有了这个功能,我就与数据库的连接

public ResultSet getmax() { 
    ResultSet r = null; 
    try { 
     String sql = "select count(*) as Cantidad from tbl_padre"; 
     System.out.println(sql); 
     Statement st = cx.createStatement(); 
     r = st.executeQuery(sql); 
     System.out.println(st.executeQuery(sql)); 
    } catch (SQLException ex) { 
     Logger.getLogger(Tmrptryone.class.getName()).log(Level.SEVERE, null, ex); 
    } 
    return r; 
} 

他在一个按钮的事件方法,用这种方法我想在打印文本字段我从数据库中收到的数据,但是出现错误。

public void actualizatext() { 
    try { 
     ResultSet r = mrp.getmax(); 
     if (r.next()) { 
      String ID = r.getString("Cantidad"); 
      pruebamax.setText(ID); 
     } 
    } catch (SQLException ex) { 
     Logger.getLogger(NewJFrame.class.getName()).log(Level.SEVERE, null, ex); 
    } 
} 
+0

你有什么错误?请张贴stacktrace以及。 –

+0

不打印我想要的值在文本字段中,不会在文本字段中打印任何东西 – Jorge1023

+0

我不知道这是怎么样的语法工作 – Jorge1023

现在,我不知道你用什么pruebamax手段,而是SQL语句:

String sql = "SELECT COUNT(*) AS Cantidad FROM tbl_padre"; 

专门用于计数目前维持在指定范围内的记录总数数据库表(tbl_padre)。来自该计数的值将保存在指定的临时字段中:Cantidad。当您使用SQL COUNT语句时,您不会返回String数据类型值。您将需要尝试获取一个整数值。

不会获取从表中ID字段,它看起来像你期望的值。

要正确地检索记录从你的应用的SQL字符串,那么它应该在这种方式中使用计数:

int count = 0; 
try { 
    String sql = "SELECT COUNT(*) AS rCount FROM tbl_padre"; 
    Statement st = cx.createStatement(); 
    ResultSet r = st.executeQuery(sql); 
    while (r.next()) { 
     count = r.getInt("rCount"); 
    } 
    r.close(); 
    st.close(); 
    // Close your DB connection as well if desired. 
    // yourConnection.close(); 

    //To apply this value to your JTextField: 
    pruebamax.setText(String.valueOf(count)); 

    System.out.println("Total number of records in the tbl_padre " + 
         " table is: " + count); 
} 
catch (SQLException ex) { 
    ex.printStackTrace(); 
} 

尽量不要使用临时字段名实际表的字段名。

如果你想要更具体的计数,那么你的SQL语句也必须更具体。例如,假设我们要计算保持在我们的表中的记录,其中一个字段名为年龄数包含的值大于年的时候,我们的SQL语句应该是这样的:

String sql = "SELECT COUNT(*) AS rCount FROM tbl_padre WHERE Age > 30"; 

您当然会注意到使用SQL WHERE子句。

+0

我工作过,谢谢! – Jorge1023