Puoi inserire set xact_abort on prima della transazione per assicurarsi che sql torni automaticamente in caso di errore.