Tutorial do guj disse:
Quando utilizamos os métodos insertRow() e updateRow(), se estivermos com o auto-commit ativado, as alterações feitas no ResultSet são efetivadas no banco, caso contrário, as alterações poderão sofrer um "rolled back" ou um "commit", podendo ou não serem gravadas no banco de dados. Isto já não ocorre com o deleteRow(), onde a linha é efetivamente eliminada do banco de dados.
Eu estou tendo rolled back, sei disto prq enquanto eu estou fazendo o update e estou lendo, estou obtendo a resposta esperada, fechando a conexão e olhando no banco, nada acontece:
Segue o meu codigo:
try {
stat = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE , ResultSet.CONCUR_UPDATABLE);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
rs = stat.executeQuery("Select * from abdon");
while(rs.next()) {
rs.updateString("nome" , "Caralho");
rs.updateRow();
System.out.println(rs.getString("nome"));
}
Alguem saberia me dizer como adicionar este auto-commit ou mesmo uma forma de fazer um commit na mão? Procurei na javadoc e não encontrei nenhum metodo que me ajuda-se.
