Não consegui entender como se chegou ao resultado de 29 no exercício abaixo.
Em todos os outros exercícios sobre savepoint consegui entender e chegar até as respostas corretas, exceto esse.
Na minha interpretação, o contador começa com 30 registros em caráter apenas informativo, já que somente será executada a instrução do segundo savepoint. Portanto os 2 registros do primeiro "savepoint a" não seriam deletados.
select count(*) from funcionarios;
-> 30
delete from funcionarios where setor_id = 10;
2 linhas deletadas
savepoint a;
insert into funcionarios values (‘rogerio’,’rodrigues’,2000);
1 linha inserida
savepoint a;
insert into funcionarios values (‘rogerio’,’rodrigues’,3500);
1 linha inserida
rollback to savepoint a;
rollback concluído