2014-05

【ORACLE】長時間流れているSQLの処理状況を調査


※経験則に基づくものであり、ORACLEの仕様を把握して書いてるわけではないです

投げたSQL(SELECT文とか)が全然かえってこないという場合

下記2つの見方でそのSQLの進行状況がある程度把握できる

(1)V$SESSION.SEQ#が変化するか

 UPDATEやDELETEなどを実行したのにいつまでたっても終わらない場合、

 先に該当レコードや表が掴まれている(LOCKされている)可能性がある。

 その場合、「待たされてるほう」のセッションは先行セッションのLOCK解放待ちになり、

 その間V$SESSION.SEQ#が同じ値のまま動かなくなる。

 逆に言うと、V$SESSION.SEQ#が見るたび変化してるようなら、

 そのセッションはちゃんと動いている。(少なくともLOCK解放待ちではない)

 この数値の変動具合が大きいほど進み具合が大きいような気がするが、

 詳しい仕様はよくしらない。

 また、特殊なケースではこの数値が変化していても

 実際は全然進んでいない というようなこともある。

 ⇒元表に項目追加したことによる関連マテビューのリフレッシュ等で

  この現象を目にしたことがある。

  SEQ#が動いてるので放置してたら

  6時間以上経っても終わらなかった(普段2時間くらい)ので強制KILLした

 あと、この数値は65535あたりを境に0に戻ってループし始める。

 このあたりは実体験に基づくものであり、正確な仕様はわからない。


【Microsoft Excel】マクロ構文

MSGBOX("TEST") "TEST"と表示(JSのalertみたいなかんじ) デバッグ用の状況表示によく使う。 あとは終わったかどうかわからないマクロの終了を告げるた

EXCELのショートカットキー

Ctrl+; 現在日付を取得 Ctrl+: 現在時刻を取得 Alt⇒Fキー⇒Aキー(EXCEL2010) 「名前を付けて保存」 Alt⇒Mキー⇒Vキー(EXCEL2010)

Spanタグのonclickを指定して別要素のclick呼び出すとGoogle Chromeでは機能しない


「IEだと動くがGoogle Chromeだと動かない」というタイプのネタ

spanタグにonclickを指定して、その中で直接JS呼び出せば機能するが、

そこから別の(例えばhidden)要素を無理やりclickするような指示を出すと機能しない。

下記のケースで機能するのは①のみ。

 

<span onClick="alert('Span Tag Click.');" style="background-color: #FFFF00">Span Tag test.</span>

<input type="hidden" name="hidden_obj1" onClick="alert('span to hidden_obj1 click.')" >

<span onClick="hidden_obj1.click();" style="background-color: #FF00FF">Span Tag test(->hidden1 click).</span>

<input type="hidden" name="hidden_obj2" onClick="alert('span to hidden_obj2 click.')" >

<span onClick="hidden_obj2.onclick();" style="background-color: #0FFFFF">Span Tag test(->hidden2 'on'click).</span>

 


JAVAソースコードメモ(ファイル操作)


String CURRENT_DIR = new File(".").getAbsoluteFile().getParent();
現在ディレクトリのフルパスを取得する

String FILE_SEP = System.getProperty(“file.separator”);
パス区切り文字を取得する
これはシステム依存なので、
Windowsならバックスラッシュ(\)だし、
UNIX系ならスラッシュ(/)を得ることができる。

String LINE_SEP = System.getProperty(“line.separator”);
改行コードを取得する
これはシステム依存なので、
WindowsならCRLFだし
UNIX系ならLFを得ることができる。


【コマンドラインメモ】JAVA(jad)

これはjava標準ではついてこない(ような記憶がある)。 いわゆるデコンパイルツール(コンパイルの逆をするツール)で、 コンパイル済みのclas

【コマンドラインメモ】JAVA(jar)

jarは圧縮ファイルと一緒で、コマンドの構文がtarと似てるところがある。 jar -cvf test.jar -C classes . クラスファイルをjarファイルとして固める。 -Cでクラ

【コマンドラインメモ】JAVA(ふつう)


javac .java
拡張子javaのファイルを全コンパイルする。
これはワイルド―カード(
.java)で指定しているからで、
単一ファイルだけコンパイルするならAAA.java等ファイル単品を指定する。