Documentación de citas de declaraciones de transacciones de Oracle :
Además, citando una publicación de transacción de wikipedia :
En tu caso , puede encerrar las tres oraciones en una sola transacción:
COMMIT; ''This statement ends any existing transaction in the session.
SET TRANSACTION NAME 'my_crazy_update'; ''This statement begins a transaction
''and names it sal_update (optional).
UPDATE PS_EMAIL_ADDRESSES
SET PREF_EMAIL_FLAG='N'
WHERE EMPLID IN ('K0G004');
DELETE FROM PS_EMAIL_ADDRESSES
WHERE EMPLID='K0G004' AND E_ADDR_TYPE='BUSN';
INSERT INTO PS_EMAIL_ADDRESSES
VALUES('K0G004', 'BUSN', '[email protected]', 'Y');
COMMIT;
Este es el mejor enfoque para cumplir con su requisito 'hacer todas las oraciones a la vez' .