sql >> Databasteknik >  >> RDS >> Oracle

Oracle-databasberoenden i PL/SQL

Det är inte möjligt att hitta beroenden mellan procedurer (i ett paket) och tabeller.

Det finns flera verktyg för att undersöka beroenden. Som du redan har upptäckt, *_DEPENDENCIES spårar endast objektberoende på en nivå per paket. Det finns ett snyggt verktyg PL/Scope som spårar beroenden mellan delar av ett paket. Men det gör den spårar inte alla tabellreferenser.

Teoretiskt kan du använda *_SOURCE . I praktiken är detta omöjligt om inte din kod använder en begränsad uppsättning funktioner. För måttligt komplicerad kod, glöm bort att använda strängfunktioner eller reguljära uttryck för att analysera kod . Tyvärr verkar det inte finnas någon PL/SQL-parser som är både programmerbar och kapabel att noggrant analysera komplex kod.

Att säga "det är inte möjligt" är inget bra svar. Men i det här fallet kan det spara dig mycket tid. Det här är en av de uppgifter där det är väldigt lätt att hamna i en återvändsgränd och slösa bort mycket kraft.




  1. c3p0 hänger i väntan. Tillgänglig med viloläge

  2. ORA-01653:det går inte att utöka tabellen med i tabellutrymmet ORA-06512

  3. MySQL vs Microsoft SQL

  4. PostgreSQL, VÄLJ från max id