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

Jak znaleźć nazwę procedury składowanej przy użyciu nazwy kolumny w Oracle 11g?

Nie ma gwarantowanego sposobu, ale możesz przeszukać użytkownika/wszystkie/źródło_dba za pomocą regexp_like aby sprawdzić całe słowa i odnieść się do nich za pomocą user/all/dba_dependencies, aby zawęzić listę pakietów do sprawdzenia.

select s.name, s.type, s.line, s.text
from   user_source s
where  ltrim(s.text,chr(9)||' ') not like '--%'
and    regexp_like(lower(s.text),'\Wyour_column_name_here\W')
and    (s.name, s.type) in
       ( select d.name, d.type
         from   user_dependencies d
         where  d.referenced_owner = user
         and    d.referenced_name = 'YOUR_TABLE_NAME_HERE' );

lub jeśli mogą istnieć odniesienia do niego z innych schematów,

select s.owner, s.name, s.type, s.line, s.text
from   all_source s
where  ltrim(s.text,chr(9)||' ') not like '--%'
and    regexp_like(lower(s.text),'\Wyour_column_name_here\W')
and    (s.owner, s.name, s.type) in
       ( select d.owner, d.name, d.type
         from   all_dependencies d
         where  d.referenced_owner = user
         and    d.referenced_name = 'YOUR_TABLE_NAME_HERE' );

Możesz po prostu użyć select distinct s.owner, s.name, s.type ... aby uzyskać listę obiektów do zbadania.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Próbuję obliczyć maksymalną długość Rowida w Oracle

  2. Jak włączyć Java Persistence 2.0 dla Weblogic 10.3.6

  3. Wielokrotne powtarzanie tej samej zmiennej bind przy użyciu dynamicznej struktury OPEN...FOR w Oracle PL/SQL

  4. Czy możemy mieć wiele WITH AS w jednym sql - Oracle SQL?

  5. Jak wybrać pierwszą ciągłą grupę wierszy za pomocą Oracle SQL