private void cmd_nextActionPerformed(java.awt.event.ActionEvent evt) {
pst=conn.prepareStatement("select * from questions where subject= ?");
pst.setString(1, "websites");
rs=pst.executeQuery();
while(rs.next())
{
qs=rs.getString("question");
option1=rs.getString("option1");
option2=rs.getString("option2");
option3=rs.getString("option3");
txt_quest.setText(qs);
jcb_opt1.setText(option1);
jcb_opt2.setText(option2);
jcb_opt3.setText(option3);
}
catch(Exception ex)
{
JOptionPane.showMessageDialog(null, ex);
}
}
我希望点击next
按钮以及点击previous
按钮的上一行,从表中获取下一行。有没有简单的方法呢??
答案 0 :(得分:1)
你不应该在一个方法中“从问题中选择”,你只想获得rs.next()。如果你想获得rs.previous(),你会再次“选择*”吗? 将您的选择放在程序的开头。
对于精心设计的 cmd_nextActionPerformed ,您需要考虑三种情况:
您的数据库表为空,或只有一个条目。在这种情况下,应该禁用下一个按钮,因为没有下一个条目。
您有下一个条目。获取数据并刷新JTextField。应启用下一步按钮。
你在最后。在rs.next()检查之后,如果rs.isAfterLast()返回true,那么你需要转到rs.last()并保持原样。应禁用下一步按钮。
好消息是 cmd_previousActionPerformed 是对称的。
答案 1 :(得分:0)
接下来,
rs.next()
以前的,
rs.previous();