sql >> Databáze >  >> RDS >> Oracle

Aktualizace SQL, odstranění a vložení současně

Citování dokumentace Oracle Transaction Statement :

Také cituji transakční příspěvek z wikipedie :

Ve vašem případě , můžete uzavřít všechny tři věty do jedné transakce:

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;

Toto je nejlepší způsob, jak splnit váš požadavek „dělat všechny věty najednou“ .



  1. SQLAlchemy:Jak odstranit pomocí spojení

  2. Běžné chyby při migraci databází PostgreSQL z On-Prem na AWS RDS

  3. Odpovídající záznamy ze dvou tabulek

  4. Optimalizace databáze MYSQL pomocí indexování