一个SQL查询,用于在Java中填充多个JTextfields

时间:2013-07-20 13:35:47

标签: java jdbc jtextfield resultset fill

我正在使用Java编写应用程序,我想使用一个SQL查询填充许多Jtextfield

例如:我的查询是:select * from table,其中表格有2列“Items”和“Month”:

Item  | Month

alpha | 1
beta  | 2
delta | 5
gamma | 3

现在我有4 JTextfields jt1jt2jt3jt4;我希望alpha进入jt1,beta进入jt2,gamma进入jt3jt4为空,因为第4个月没有项目。< / p>

我已经寻找了很多天的解决方案,但我找不到一个。

到目前为止我有这个代码:

String ec = "select * from table";

try {
    Statement stmt_ec = conn.createStatement();
    ResultSet rs_ec = stmt_ec.executeQuery(ec);
    while (rs_ec.next()) {
        // solution ???
    }
}

3 个答案:

答案 0 :(得分:1)

您在检索记录时采取了错误的方法,因为数据库中有两个,所以只需要两个文本字段。因此,字段数取决于数据库中的列,不是行。

if(rs_ec.next()){
 itemField.setText(rs_ec.getString("Item");
 monthField.setText(rs_ec.getString("Month");
}

在这种情况下,您甚至不需要迭代记录,因为您没有表, textfields 一次只显示一行。如果您希望显示所有记录,则必须使用 JTable

答案 1 :(得分:0)

在里面

while (rs_ec.next()) {    
    jt1.setText(rs_ec.getString("alpha"));
    jt2.setText(rs_ec.getString("beta"));
    jt3.setText(rs_ec.getString("gamma"));
    jt4.setText(rs_ec.getString("delta"));
}

答案 2 :(得分:0)

请参阅Table From Database中的Table From Database Example代码,了解从SQL查询创建JTable的一些代码。