私のデータベースの行をスクロールしようとしていますね。何らかの理由で、前のボタンと次のボタンが機能しません。次のボタンは最初の行だけを表示し、前のボタンは何も表示しません。私の最初と最後のボタンが機能しています。Java ResultSet next()とprevious()ボタンが機能しません
private void previousbtnActionPerformed(java.awt.event.ActionEvent evt) {
try
{
con = DriverManager.getConnection(CONN_STRING, USERNAME, PASSWORD);
Statement st = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
ResultSet rs = st.executeQuery("SELECT * FROM EMPLOYEE");
if (rs.previous())
{
str1 = rs.getString("emp_id");
emp_id.setText(str1);
str2 = rs.getString("emp_fname");
first_name.setText(str2);
str3 = rs.getString("emp_lname");
last_name.setText(str3);
}
else
{
rs.next();
}
con.close();
}
catch (SQLException err)
{
JOptionPane.showMessageDialog(EmployeeGUI.this, err.getMessage());
}
}
private void nextbtnActionPerformed(java.awt.event.ActionEvent evt) {
try
{
con = DriverManager.getConnection(CONN_STRING, USERNAME, PASSWORD);
Statement st = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
ResultSet rs = st.executeQuery("select * from employee");
if (rs.next())
{
str1 = rs.getString("emp_id");
emp_id.setText(str1);
str2 = rs.getString("emp_fname");
first_name.setText(str2);
str3 = rs.getString("emp_lname");
last_name.setText(str3);
}
else
{
rs.previous();
}
}
catch (SQLException err)
{
JOptionPane.showMessageDialog(EmployeeGUI.this, err.getMessage());
}
}
いいえ私はページネーションを実装しようとしていません。それは単なる行の束を持つデータベーステーブルです。最初のボタンはテーブルの最初の行を表示し、最後のボタンは最後の行を表示します。次のボタンと前のボタンは、行間を前後にジャンプします。 –
これはまさにページネーションです: –
私はあなたが話していることを理解しているとは思わない。基本的には、変更する必要があるのは実際のプログラムではなく、SQLコードだけです。 –