Oracle
 sql >> база данни >  >> RDS >> Oracle

как да генерирате план за обяснение за цялата съхранена процедура

Това, което генерирате, правилно се нарича "план за изпълнение". „Обяснете плана“ е команда, използвана за генериране и преглед на план за изпълнение, подобно на AUTOTRACE TRACEONLY във вашия пример.

По дефиниция планът за изпълнение е за един SQL оператор. PL/SQL блокът няма план за изпълнение. Ако съдържа един или повече SQL изрази, тогава всеки от тях ще има план за изпълнение.

Една от възможностите е ръчно да извлечете SQL изразите от PL/SQL кода и да използвате процеса, който вече сте показали.

Друг вариант е да активирате SQL проследяване, след което да стартирате процедурата. Това ще създаде файл за проследяване на сървъра, който съдържа плановете за изпълнение за всички изрази, изпълнени в сесията. Проследяването е в доста сурова форма, така че обикновено е най-лесно да се форматира с помощта на инструмента TKPROF на Oracle; има и различни инструменти на трети страни, които обработват и тези файлове за проследяване.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да получите текущ обект Connection в Spring JDBC

  2. Опитът да експортирате Oracle чрез PL/SQL дава дата 0000-00-00

  3. Проверете редовете за монотонно нарастващи стойности

  4. Използвайте v('APP_USER') като стойност по подразбиране за колона в Oracle Apex

  5. Свържете няколко реда в една колона с помощта на функция в Oracle с 3 свързани таблици