在 oracle 中查看存儲(chǔ)過程執(zhí)行記錄的方法包括:使用 v$sysstat 表查詢執(zhí)行次數(shù)和時(shí)間戳;使用 v$sql_workarea 表獲取當(dāng)前執(zhí)行的信息;查看會(huì)話日志文件,需打開追蹤會(huì)話并關(guān)閉后查閱。
Oracle 中查看存儲(chǔ)過程執(zhí)行記錄的方法
在 Oracle 數(shù)據(jù)庫中,可以通過以下方法查看存儲(chǔ)過程的執(zhí)行記錄:
1. 使用 V$SYSSTAT 表
V$SYSSTAT 表存儲(chǔ)有關(guān)系統(tǒng)統(tǒng)計(jì)信息的數(shù)據(jù),包括存儲(chǔ)過程的執(zhí)行次數(shù)。要查詢存儲(chǔ)過程的執(zhí)行記錄,請(qǐng)使用以下 SQL 語句:
<code class="sql">SELECT * FROM V$SYSSTAT WHERE NAME = 'user_procedure_executions';</code>
登錄后復(fù)制
該語句將返回已執(zhí)行存儲(chǔ)過程的次數(shù)、最后執(zhí)行時(shí)間戳等信息。
2. 使用 V$SQL_WORKAREA 表
V$SQL_WORKAREA 表存儲(chǔ)有關(guān)當(dāng)前執(zhí)行的 SQL 語句的信息。如果正在執(zhí)行存儲(chǔ)過程,則該表將包含有關(guān)該存儲(chǔ)過程的信息。要查看存儲(chǔ)過程的執(zhí)行記錄,請(qǐng)使用以下 SQL 語句:
<code class="sql">SELECT * FROM V$SQL_WORKAREA WHERE OWNER = '<owner_name>' AND NAME = '<stored_procedure_name>';</stored_procedure_name></owner_name></code>
登錄后復(fù)制
<owner_name></owner_name>
是存儲(chǔ)過程的所有者名稱,<stored_procedure_name></stored_procedure_name>
是存儲(chǔ)過程名稱。
3. 查看會(huì)話日志文件
會(huì)話日志文件記錄有關(guān)會(huì)話活動(dòng)的信息,包括存儲(chǔ)過程執(zhí)行記錄。要查看會(huì)話日志文件,請(qǐng)使用以下步驟:
打開跟蹤文件會(huì)話。
執(zhí)行存儲(chǔ)過程。
關(guān)閉跟蹤文件會(huì)話。
找到并查看會(huì)話日志文件。
會(huì)話日志文件的默認(rèn)位置是 ORACLE_BASE/admin//udump/.trc。