oracle 哪个表记录了执行过的sql语句
答案:2 悬赏:10
解决时间 2021-04-27 11:29
- 提问者网友:霸气大叔
- 2021-04-27 05:09
oracle 哪个表记录了执行过的sql语句
最佳答案
- 二级知识专家网友:飘零作归宿
- 2021-04-27 05:34
v$sql v$sqlarea
全部回答
- 1楼网友:狙击你的心
- 2021-04-27 06:09
--先来一个完整代码:
select
a.sql_text,
u.username,
trunc(a.sharable_mem / 1024, 2) "sharable_mem (kb)",
trunc(a.persistent_mem / 1024, 2) "persistent_mem (kb)",
trunc(a.runtime_mem / 1024, 2) "runtime_mem (kb)",
a.sorts,
a.version_count,
a.loaded_versions,
a.open_versions,
a.users_opening,
a.fetches,
a.executions,
a.users_executing,
a.loads,
a.first_load_time,
a.invalidations,
a.parse_calls,
a.disk_reads,
a.buffer_gets,
a.rows_processed,
a.command_type,
a.optimizer_mode,
a.parsing_user_id,
a.parsing_schema_id,
a.kept_versions,
rawtohex(a.address) "address",
a.hash_value,
a.module,
a.module_hash,
a.action,
a.action_hash,
a.serializable_aborts,
a.cpu_time,
a.elapsed_time,
a.is_obsolete,
a.child_latch
from
sys.v_$sqlarea a,
sys.all_users u
where
a.parsing_user_id = u.user_id;
--这里是问题的需求:
select a.sql_text from sys.v_$sqlarea a, sys.all_users u
where a.parsing_user_id = u.user_id and rownum=1;
--说明:你得存储过程得有访问这个两个表或视图的权限。
--用dba用户授权这两个表或视图给存储过程的用户。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息