2016-01-10 132 views
-2

我使用MS SQL Server和Java與JDBC進行連接。 我不知道如何在Java Texfield中顯示我的簡單SQL查詢的結果。在JTable中顯示我的數據對於外部JAR rs2xml沒有問題。SQL Server:在Java Textfield中顯示結果

這工作和打印我的表在面板。

String MaxQuery = "SELECT * FROM Employees"; 
PreparedStatement pst=con.prepareStatement(MaxQuery); 
ResultSet rs=pst.executeQuery(); 
table.setModel(DbUtils.resultSetToTableModel(rs)); 

時,我想,顯示一個類似「SELECT AVG(預算)FROM員工」用1個結果一個簡單的查詢,我想在一個文本框打印此

setModel方法不適用於Textfields。所以我試過類似的東西:

String AVGQuery = "SELECT AVG(budget) FROM Employees"; 
PreparedStatement pst=con.prepareStatement(AVGQuery); 
ResultSet rs=pst.executeQuery(); 
textFieldAns.setText(rs.toString()); 

但是,打印我「SQLServerResultSet:1」。我想要的結果,而不是結果的數量。希望你能幫我解決我的小問題:)。

+0

[在這裏你可以找到關於如何使用ResultSet的更多信息](https://開頭的文檔。 oracle.com/javase/tutorial/jdbc/basics/retrieving.html) – Titus

+2

未來,請考慮在這方面進行一些探索。簡單看一下ResultSet API會爲您快速回答這個問題。 –

回答

1

我相信你需要使用類似的代碼

if (rs.next()) { 
    textFieldAns.setText(rs.getString("column name you want to print"); 
} 

這裏是S很好的例子https://docs.oracle.com/javase/tutorial/jdbc/basics/retrieving.html

+0

問題是,這個結果沒有列名。當我說「選擇AVG(預算)FROM僱員」列名未定義。 – whyper

+1

您可以通過索引'getString(int)'指定列;請記住,在JDBC中它是1索引的,而不是像索引的其他Java API – MadProgrammer

+0

非常感謝!那是我的問題。我那小時前做過,但我曾經用過0 ... – whyper