SELECT d.grantee, r.role, r.privilege
FROM DBA_role_privs d, role_sys_privs r
WHERE d.grantee not like ('A%') and d.granted_role = r.role
ORDER BY d.grantee, r.role, r.privilege asc;
Excellent listing of Oracle metadata queries
SELECT alc.constraint_name,
CASE alc.constraint_type
WHEN 'P' THEN 'PRIMARY KEY'
WHEN 'R' THEN 'FOREIGN KEY'
WHEN 'U' THEN 'UNIQUE'
WHEN 'C' THEN 'CHECK'
END "constraint_type",
alc.DELETE_RULE "on_delete",
CASE alc.deferrable WHEN 'NOT DEFERRABLE' THEN 0 ELSE 1 END "deferrable",
CASE alc.deferred WHEN 'IMMEDIATE' THEN 1 ELSE 0 END "initially_deferred",
alc.search_condition,alc.table_name, cols.column_name, cols.position,
r_alc.table_name "references_table", r_cols.column_name "references_field", r_cols.position "references_field_position"
FROM all_cons_columns cols LEFT JOIN all_constraints alc ON alc.constraint_name = cols.constraint_name
AND alc.owner = cols.owner
LEFT JOIN all_constraints r_alc ON alc.r_constraint_name = r_alc.constraint_name AND alc.r_owner = r_alc.owner
LEFT JOIN all_cons_columns r_cols ON r_alc.constraint_name = r_cols.constraint_name AND r_alc.owner = r_cols.owner AND cols.position = r_cols.position
WHERE alc.constraint_name = cols.constraint_name AND alc.table_name = '?';
SELECT max(a.value) as highest_open_cur, p.value as max_open_cur, a.sid FROM v$sesstat a, v$statname b, v$parameter p
WHERE a.statistic# = b.statistic# and b.name = 'opened cursors current' and p.name= 'open_cursors'
group by a.sid, p.value
order by max(a.value) desc