Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk menyemak di mana prosedur tersimpan dilaksanakan dalam Oracle

Bagaimana untuk menyemak di mana prosedur tersimpan dilaksanakan dalam Oracle

下次还敢
下次还敢asal
2024-04-18 15:18:17978semak imbas

Anda boleh melihat status pelaksanaan prosedur tersimpan Oracle melalui kaedah berikut: Gunakan pakej DBMS_APPLICATION_INFO untuk melihat operasi yang sedang dilaksanakan. Gunakan paparan V$SESSION_LONGOPS untuk melihat butiran prosedur tersimpan yang sedang dilaksanakan. Gunakan paparan V$SQL_EXECUTE untuk melihat maklumat pelaksanaan yang berkaitan dengan prosedur tersimpan yang ditentukan.

Bagaimana untuk menyemak di mana prosedur tersimpan dilaksanakan dalam Oracle

Bagaimana untuk memeriksa di mana prosedur yang disimpan Oracle dilaksanakan urusan pangkalan data Oracle, anda boleh menyemak di mana prosedur yang disimpan dilaksanakan dengan kaedah berikut:

Gunakan pakej dbms_application_info

<code class="sql">SELECT action FROM DBMS_APPLICATION_INFO;</code>
ethe keputusan akan memaparkan Operasi semasa yang sedang dilaksanakan, seperti:

MULA - pelaksanaan prosedur tersimpan bermula

    TAMAT - pelaksanaan prosedur tersimpan tamat
  • PELAKSANAAN KENYATAAN - penyata sedang dilaksanakan
  • KOMITED
  • urus niaga
Gunakan paparan V$SESSION_LONGOPS

<code class="sql">SELECT sid, event, p1text, rows_processed, elapsed_seconds
FROM V$SESSION_LONGOPS
WHERE event LIKE '%EXECUTE PL/SQL%'
AND sid = <会话 ID>;</code>
Hasilnya akan menunjukkan butiran prosedur tersimpan yang sedang dilaksanakan, termasuk:

sid - ID sesi
  • acara - jenis acara
  • p1teks - penyata nombor berurutan sedang dijalankan diproses
  • elapsed_seconds - Masa pelaksanaan yang telah berlalu dalam beberapa saat
  • Menggunakan paparan V$SQL_EXECUTE
<code class="sql">SELECT sql_text, row_count, elapsed_time
FROM V$SQL_EXECUTE
WHERE sql_text LIKE '%<存储过程名称>%'
AND sid = <会话 ID>;</code>

Hasilnya akan memaparkan maklumat pelaksanaan yang berkaitan dengan prosedur tersimpan teks yang ditentukan, termasuk:

teks yang disimpan, termasuk:

bilangan_baris - bilangan baris yang terjejas
  • masa_berlalu - masa berlalu dalam mikrosaat
  • Contoh

Andaikan terdapat prosedur tersimpan bernama "GET_EMPLOYEES". Untuk melihat status pelaksanaannya, anda boleh menggunakan pertanyaan berikut:

<code class="sql">SELECT sid, event, p1text
FROM V$SESSION_LONGOPS
WHERE event LIKE '%EXECUTE PL/SQL%'
AND p1text LIKE 'GET_EMPLOYEES%';</code>
Hasilnya akan memaparkan maklumat berikut:

<code>sid  event                                           p1text
123  EXECUTE PL/SQL                               GET_EMPLOYEES(...)</code>

Ini menunjukkan bahawa prosedur tersimpan "GET_EMPLOYEES" sedang dilaksanakan dan ID sesi ialah 123.

Atas ialah kandungan terperinci Bagaimana untuk menyemak di mana prosedur tersimpan dilaksanakan dalam Oracle. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn