Fiz um JTable, onde eu posso dá um update no Banco de Dados. Porém, apenas um dado muda:
private void salvarActionPerformed(java.awt.event.ActionEvent evt) {
for (int i = 0; i < tabela.getRowCount(); i++) {
try {
PreparedStatement pst = c.conn.prepareStatement("update ESTADOS"
+ " set NOME_DO_ESTADO =?, SIGLA_DO_ESTADO =?"
+ " where ID =?");
pst.setInt(3, (int) tabela.getValueAt(i, 0));
pst.setString(1, (String) tabela.getValueAt(i, 1));
pst.setString(2, (String) tabela.getValueAt(i, 2));
pst.execute();
pst.close();
JOptionPane.showMessageDialog(null, "DEU CERTO!");
} catch (SQLException ex) {
throw new RuntimeException(ex);
}
break;
}
}
Código SQL:
CREATE TABLE ESTADOS
(
ID INT NOT NULL PRIMARY KEY GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1),
NOME_DO_ESTADO VARCHAR(20),
SIGLA_DO_ESTADO VARCHAR(2)
);
Minha tabela:
O dado “Acre” é o único que se altera.