2017-05-09 58 views
0

我的文本框被稱爲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

回答

0

現在,我不知道你用什麼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

相關問題