Oracle
 sql >> Baza danych >  >> RDS >> Oracle

mutowanie, wyzwalacz/funkcja może go nie widzieć - błąd podczas wykonywania wyzwalacza

Wyjątek „tabela mutuje” jest zgłaszany, gdy wyzwalacz zdefiniowany jako FOR EACH ROW próbuje uzyskać dostęp do tabeli, dla której została uruchomiona. Tom Kyte napisał świetny przewodnik po przyczynach i rozwiązaniu tego wyjątku tutaj .

W podanym przykładzie nie ma opcji FOR EACH ROW, więc nie spodziewałbym się, że zostanie zgłoszony wyjątek. Zazwyczaj wystarczy użyć wyzwalaczy FOR EACH ROW w przypadkach, gdy konieczne jest uzyskanie dostępu do wartości :OLD lub :NEW każdego wiersza, a nie.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jaka jest różnica między tabelą tymczasową a globalną tabelą tymczasową w Oracle?

  2. Wyjaśnij plan kosztowy Punkt bólu

  3. Funkcje okien SORT są kosztowne, czy możemy to przezwyciężyć?

  4. Jak sformatować i posortować datę w Oracle?

  5. Jak obliczyć zmiany w Oracle sql