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

PL/SQL:ORA-00942:tabulka nebo pohled neexistuje V$SQL

Tabulky související se slovníkem databáze nebo systémové tabulky (v tomto případě v_$sql) vlastní Oracle sys a pro přístup k nim potřebuje speciální oprávnění. Musíte se přihlásit do databáze Oracle jako sysdba user nebo získejte tato oprávnění (s tím vám může pomoci váš DBA), abyste získali přístup k zobrazením datového slovníku.

Jak je uvedeno v tomto článku

The problem is that procedures don't respect roles; only directly granted rights 
are respected. So, that means that table_owner has to regrant the right to select

Zkuste tedy následující udělit SELECT na všechny pohledy slovníku, abyste jej mohli použít ve svých pl/sql blocích.

grant select any dictionary to USERNAME


  1. MySQL Jak vložíte INSERT DO tabulky s poddotazem SELECT vracejícím více řádků?

  2. Dynamické dělení tabulek v Oracle

  3. Nezdá se, že by kaskáda Doctrine2.3 a OneToOne fungovala

  4. Výkon Oracle CLOB