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

Aktualizujte stejnou tabulku po vložení triggeru

Nemyslím si, že UPDATE je na SOME_TABLE povolena, protože v současné době mutuje.

Proč jej neumístit hned za příkaz INSERT, který spustil spoušť?.

INSERT INTO SOME_TABLE ...
update Some_Table set status = 'Y' where id = (select max(id) id  from Some_Table where status = 'N'); --Update Table that SMS has been sent

Myslím, že by to byl správný přístup, vezmeme-li v úvahu, že v této AKTUALIZACI neděláte nic specifického pro řádek.

Jak jsem zmínil v komentáři, existuje nějaké konkrétní použití pro tento poslední příkaz v AFTER INSERT spoušť? Má význam v BEFORE INSERT spoušť.

select 'Y' into :new.status from dual;


  1. AES_ENCRYPT a AES_DECRYPT pomocí jazyka Java

  2. Jaké konkrétní výjimky představují selhání serializace, když Django používá serializovatelnou úroveň izolace transakcí s postgresql?

  3. Kód chyby 1064, stav SQL 42000:Máte chybu v syntaxi SQL;

  4. PL/SQL:ORA-00904:neplatný identifikátor &PL/SQL:Příkaz ignorován&PLS-00364:použití proměnné indexu smyčky je neplatné