行を選択して「削除」ボタンを押すと、次のようになります。
スイングインターフェイスでは、選択した行が削除されます(予想どおり)。だが
実際のデータベースでは、選択した行が何であれ、最後の行が削除されます(予期されていません)。削除された行は、実際に選択された行が何であれ、常にデータベースの最後の行です。私のコードにはエラーや例外はありません。中断することなく動作します。
私は実際に必要なものをコードに追加しました:
Statement sqlStatement = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
選択した行を削除するには、「削除」ボタンを追加します。
JButton removeEmployee = new JButton("Remove Selected");
removeEmployee.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
dTableModel.removeRow(table.getSelectedRow());
try
{
resultSet.absolute(table.getSelectedRow());
resultSet.deleteRow();
} catch (SQLException e1)
{
e1.printStackTrace();
}
}
});