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

ORA-00942:tabela lub widok nie istnieje (działa, gdy oddzielny sql, ale nie działa w funkcji oracle)

Istnieje duża szansa, że ​​uprawnienia do wyboru z tabeli 1 zostały przyznane roli, a rola została przyznana Tobie. Uprawnienia przyznane roli nie są dostępne dla PL/SQL napisanego przez użytkownika, nawet jeśli użytkownikowi przyznano rolę.

Często widać to w przypadku użytkowników, którym przyznano rolę dba na obiektach należących do sys. Użytkownik z rolą dba będzie mógł na przykład SELECT * from V$SESSION , ale nie będzie w stanie napisać funkcji zawierającej SELECT * FROM V$SESSION .

Poprawka polega na udzieleniu użytkownikowi wyraźnych uprawnień do danego obiektu, na przykład w powyższym przypadku użytkownik SYS musi GRANT SELECT ON V_$SESSION TO MyUser;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle Konwertuj wiersze na kolumny

  2. Najlepsze zapytanie, aby trafić na indeks Oracle z wiązaniami i wartościami null

  3. Konwertuj VARCHAR2 na liczbę

  4. Domyślny format daty Oracle to RRRR-MM-DD, DLACZEGO?

  5. ORA-01847 dzień miesiąca musi mieścić się w przedziale od 1 do ostatniego dnia miesiąca - ale dane są OK