Untuk menanyakan jadual yang terlibat dalam prosedur tersimpan: Sambung ke pangkalan data. Tanya paparan ALL_OBJECT_TABLES dan tapis jadual yang terlibat dalam prosedur tersimpan (OBJECT_NAME sepadan dengan prosedur tersimpan OBJECT_NAME, kecualikan jadual sementara dan nama jadual tidak mengandungi $). Hasilnya akan mengandungi nama prosedur tersimpan (OBJECT_NAME) dan nama jadual yang terlibat (TABLE_NAME).
Oracle Query jadual yang terlibat dalam prosedur tersimpan
Untuk menanyakan jadual yang terlibat dalam prosedur tersimpan, anda boleh menggunakan paparan kamus data Oracle. Pandangan ini mengandungi maklumat tentang objek pangkalan data Oracle.
Langkah:
<code class="sql">SELECT * FROM ALL_OBJECT_TABLES WHERE OBJECT_NAME IN ( SELECT OBJECT_NAME FROM ALL_OBJECTS WHERE OBJECT_TYPE = 'PROCEDURE' AND SCHEMA_NAME = 'YOUR_SCHEMA_NAME' ) AND TABLE_NAME NOT LIKE '%$%' AND TEMPORARY = 'N' ORDER BY OBJECT_NAME, TABLE_NAME;</code>
Keputusan:
Pertanyaan ini akan mengembalikan maklumat daripada lajur berikut:
TABLE_NAME
:存储过程涉及的表的名称示例:
如果有一个名为 GET_CUSTOMER_DATA
的存储过程,并且该存储过程涉及 CUSTOMER
和 ORDERS
表,则查询结果将类似于以下内容:
<code class="sql">OBJECT_NAME TABLE_NAME GET_CUSTOMER_DATA CUSTOMER GET_CUSTOMER_DATA ORDERS</code>
说明:
ALL_OBJECT_TABLES
视图包含有关数据库中所有表的元数据信息。ALL_OBJECTS
视图包含有关数据库中所有对象(包括存储过程)的元数据信息。TABLE_NAME
列可能会包含 $
标志,这表示表是 Oracle 内部使用的临时表。这些表应从结果中排除。TEMPORARY
TABLE_NAME: Nama jadual yang terlibat dalam prosedur tersimpan GET_CUSTOMER_DATA
dan prosedur tersimpan melibatkan CUSTOMER Jadual
dan ORDERS, hasil pertanyaan akan menyerupai yang berikut: 🎜rrreee🎜🎜 Penerangan: 🎜🎜🎜🎜 Paparan ALL_OBJECT_TABLES
mengandungi maklumat metadata tentang semua jadual dalam pangkalan data. 🎜🎜Pandangan ALL_OBJECTS
mengandungi maklumat metadata tentang semua objek dalam pangkalan data, termasuk prosedur tersimpan. 🎜🎜Lajur TABLE_NAME
mungkin mengandungi bendera $
, yang menunjukkan bahawa jadual ialah jadual sementara yang digunakan secara dalaman oleh Oracle. Jadual ini harus dikecualikan daripada keputusan. 🎜🎜Lajur SEMENTARA
menunjukkan sama ada jadual adalah jadual sementara. Jadual sementara akan dipadamkan selepas sesi tamat dan oleh itu harus dikecualikan daripada keputusan. 🎜🎜Atas ialah kandungan terperinci Apakah jadual yang terlibat dalam prosedur tersimpan pertanyaan Oracle?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!