エンジュニアのメモのメモ -2ページ目

エンジュニアのメモのメモ

エンジュニアの、エンジュニアによる、エンジニアのためのメモ


できる事はわかってるんだけど、
いちいち覚えてないって感じのSQLの記載方法。


トリガーの状態を調べるSQL
⇒SELECT TRIGGER_NAME, STATUS FROM USER_TRIGGERS;

すべてのオブジェクトの状態を調べるSQL
⇒SELECT * FROM ALL_OBJECTS WHERE STATUS = 'INVALID'

ユーザーに紐づくオブジェクトの状態を調べるSQL
⇒SELECT * FROM USER_OBJECTS WHERE OBJECT_TYPE = 'TRIGGER'

オブジェクトを再コンパイルするSQL
⇒ALTER XXXX TRG_XXXX COMPILE;

オブジェクトを無効にするSQL
⇒ALTER XXXX TRG_XXXX DISABLE;

オブジェクトを有効にするSQL
⇒ALTER XXXX TRG_XXXX ENABLE;


Oracle専用だけど、重いSQLを取得するSQL。


SET LINES 1500;
SET LOBOF 1;
SET LONG 50000;

select sql_id,sql_fulltext,
elapsed_time/executions/1000000 "elapsed_time(sec)",
cpu_time/executions/1000000 "cpu_time(sec)",
rows_processed/executions "rows_processed(rows)",
buffer_gets/executions "buffer_gets(blocks)",
disk_reads/executions "disk_reads(blocks)",
sorts/executions "sorts(times)",
first_load_time, executions
from v$sqlarea
where executions != 0 and elapsed_time/executions > 3000000;

Oracle専用だけど、ロック情報を取得するSQL。

SELECT
s.SID, d.OBJECT_NAME, s.OSUSER, s.PROGRAM, s.MACHINE
FROM
v$LOCKED_OBJECT l
, DBA_OBJECTS d
, v$SESSION s
WHERE
(l.OBJECT_ID = d.OBJECT_ID(+))
AND (l.SESSION_ID = s.SID(+))
ORDER BY
s.SID, d.OBJECT_NAME
最近またダーツをやり始めています。
半年ぐらいみっちりやって、それから4年やってませんでした。
久しぶりにやりに行って、またはまってしまいましたw

今レーティングが6なんだけど
外でしかやらないもんだから、ぜんぜんあがらないw

やっぱボード買って、家で練習したいなぁ