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

Wyjątki PL/SQL przy aktualizacji/usuwaniu nieistniejącego wiersza

Wierzę, że SQL%NOTFOUND zwraca true gdy nie zostaną znalezione żadne rekordy. Twój IF w takim przypadku oszacowałby się na true i dlatego zapisze swój put_line do terminala. Instrukcja SQL została wykonana pomyślnie. Jeśli wykonasz tę instrukcję SQL samodzielnie z wiersza poleceń, otrzymasz 0 zaktualizowanych/usuniętych wierszy, a nie błąd Oracle.

Jeśli chcesz rzucić wyjątek, możesz użyć RAISE wewnątrz twojego IF i wskaż go na wyjątek w bloku wyjątków, który chcesz wyrzucić.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak unieważnić instrukcję SQL w obszarze Oracle SQL, aby podczas zbierania statystyk powstał nowy plan?

  2. Zapytanie do bazy danych do wyszukiwania przy użyciu adresu

  3. Dostawca Oracle Entity Framework nie przechowuje DateTime.Now z milisekundami

  4. Jaki jest odpowiednik Oracle REF CURSOR w MySQL podczas korzystania z JDBC?

  5. Błąd 1033 otrzymał logowanie do trybu gotowości