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

Oracle SQL trigger při aktualizaci sloupce

Použijte klauzuli WHEN:

create or replace
  TRIGGER ADD_CREATE_DT 
  after UPDATE of approved ON articles 
  for each row
  when (new.approved = 'Y')
  BEGIN
  :new.create_dt := sysdate;
  END;

Nebo použijte IF:

create or replace
  TRIGGER ADD_CREATE_DT 
  after UPDATE of approved ON articles 
  for each row
  BEGIN
  if :new.approved = 'Y' then
   :new.create_dt := sysdate;
  end if;
  END;

V tomto případě je vhodnější a efektivnější WHEN.



  1. Proč nemohu použít dense_rank pro SQL 'rank score'?

  2. SQL získat další řádky z agregační funkce

  3. Jaká je výchozí velikost vstupu varchar2 do uložené procedury Oracle a lze ji změnit?

  4. Jak otestovat, na kterém portu MySQL běží a zda je možné jej připojit?