Log.log(work)

いろんな作業メモ

2014-01-01から1年間の記事一覧

oracleのNULL

oracleのNULLは扱いとしてはデカいので、 昇順でソートすると一番最後にくる。

oracleにつながっているか確認する簡単な方法

ユーザ ユーザによって環境変数は変わってくる。 今回、作ったユーザでoracleにつなぎに行こうとしたらできなかった。 確認方法としては、 sqlplus とたたくと変数がセットされてるとちゃんと立ち上がるが、設定がミスってると立ち上がらない。 メモ .bash_p…

関係演算子が無効です

と言われた。 SELECT * FROM HOGE WHERE (column1,column2) in (values('foo','001'),('hogehoge','002')) SQL : ORA-00920: 関係演算子が無効です。 in values ~ってoracleじゃつかえないんだっけか。 DB2とpostgresは使えたようなきが。 ========…

よんどく

真新しいものはないけど備忘録的に。 『たった5秒思考を変えるだけで、仕事の9割はうまくいく』考え方のムダを省く方法とは | U-NOTE【ユーノート】

管理者共有フォルダをみつける

d$ ex)\\192.168.0.xxx\d$\管理共有あどみんだったら見えるはず。

インポート/エクスポート

たまにやると忘れるのでめも。 エクスポート exp system/manager tables="tableName" log=exp_20141114_TBL.log file=exp_20141114_TBL.dmp インポート imp system/manager file=/home/hoge/backup/exp_20141114_TBL.dmp log=/home/hoge/backup/TBL.log tabl…

chownの扱いについて

Ubuntu日本語フォーラム / 誤ったchownによりOSが危険な状態に chown -R $USER:$USER /OSこわれるのでやらないこと。

DBMS_METADATA による定義文の取り出し

DBMS_METADATA による定義文の取り出しDBMS_METADATA 使用例 - オラクル・Oracleをマスターするための基本と仕組み DBMS_METADATA 使用例 - オラクル・Oracleをマスターするための基本と仕組み

PL/SQL レベルのエラーハンドル

WHENEVER SQLERROR コマンド SQLを発行しているときに何かしらのエラーが出たら続行するか途中でやめるか、オプションで指定できる。 EXIT(終了)する場合 WHENEVER SQLERROR EXIT [ SUCCESS | FAILURE | WARNING | 戻り値(※)] [ COMMIT | ROLLBACK ] (※) …

流し逃げのやりかた

バックグラウンドでジョブを動かし続ける ./hoge.sh & バックグラウンドのジョブを拾ってくる jobs で確認し、その番号をメモってから fg [メモった番号] でフォアグラウンドに戻す 途中でバックグラウンドにする場合 Ctrl + Z で一時停止 jobs で番号を確認…

PRAGMA AUTONOMOUS_TRANSACTION; -- 自律型トランザクション

自律型トランザクション - オラクル・Oracleをマスターするための基本と仕組み 自律型トランザクション - オラクル・Oracleをマスターするための基本と仕組み

カメでSVN引っ越し

SVN

再配置 今のリポジトリから別のリポジトリへ向き先を変更することを再配置という。フォルダを右クリックして、再配置を選択し、URLを入力したらおk。

時刻の指定

hoge_date='2014-09-20' デフォルトは'DD-MON-YY'.

環境変数

select * from v$nls_parameters;

loopback

ループバック とは 自分自身に対してデータを送信すること。あるいは、そのような機能。ネットワークカードには自分自身を指し示す「ループバックアドレス」が設定されており、ここ宛てに送信されたデータはカード内の受信側で受信される。機器が正常に稼動…

配列初期化

TYPE TYPE_HOGE IS VARRAY(100) OF VARCHAR2(2); var_hoge TYPE_HOGE := TYPE_HOGE(''); 配列の初期化、とりあえずブランクで。

例外を発生させる

キーワードはRAISE RAISE hogeException で指定の例外を発生させることが可能。 javaで言うなら throw new Exception(); テストで実施するなら RAISE_APPLICATION_ERROR(-20000, 'ほげほげエラー'); と書くと便利。

Macでローカルサーバを立ち上げつつ

D3.JSをさわる まず、HTMLがあるフォルダに移動。 そこでサーバを立ち上げるpython -m http.server 5000立ち上がったらhttp://localhost:5000/で確認。 D3.js 棒グラフ コツとしてはブラウザは左上が(0,0)になっているのでbarをのばそうとしてその値を加算す…

ER図作成ツール

http://www.wind.sannet.ne.jp/m_matsu/developer/a5m2/ DBに接続したらデータベース→ER図→ER図リバース生成でリストが表示されるので、 そこからER図を作りたいテーブルを複数選んで生成を押下すると(ちょっと時間はかかるが)図が出来上がる。

SUM関数

http://www.shift-the-oracle.com/sql/aggregate-functions/sum.html select NVL( SUM( CASE WHEN hogeFlg = '1' then hoge else 0 end ), 0 ) from foo group by hoge SUM関数はNULL以外の値を集計するが、SUMの集計対象の項目が全部がNULLだったらNULLが返…

可変長配列(VARRAY)

形式 TYPE 配列名 IS VARRAY(size) OF データ型 [NOT NULL]; TYPE type_hoge IS VARRAY(99) OF VARCHAR2(2); 配列を使うとき vWK_type_hoge type_hoge := type_hoge(); vWK_type_hoge (1) := '01';

0埋め

http://www.shift-the-oracle.com/sql/number-format-element.html 'hoge' || to_char(1, '00') と打つと、 hoge 01 と、謎のスペースが入るけど、 'hoge' || to_char(1, 'FM00') とすると hoge01 になる。

例外処理

めもめも。 ---何かの処理 Exception WHEN OTHERS THEN --それ以外の例外のときに入るので、この場合、全例外がこのなかにはいる 処理。 end

李下に冠を正さず

意味 自分の行動は常に用心深くし、疑われるようなことをしてはならない。 由来 「李(すもも)」の下で冠をかぶり直すために手を上げると、すももを盗ろうとしているような誤解を与えることとなるので疑わしいまねをするものではない、との意から。 出典 『…

既存のパッケージ

UTL_FILEとか DBMS_OUTPUTとか、どこかのファイルに処理が書いていないかなーとローカルフォルダをGREPしてもぜんぜん見つからないので変だなと思ったら、 もともと入っているパッケージだった罠。

select ~ into ~ from

SQL

SELECT INTO 文はテーブルのデータを選択し、新規テーブルにそれを挿入する。 全件検索結果を新規テーブルに突っ込んでバックアップつくるとか。 SELECT COUNT(*) INTO hogeCount FROM HOGE; IF hogeCount = 0 THEN --処理 ELSE --処理 END IF;

LOOP文

基本的に3パターン。 基本 LOOP --処理とか --抜けたい場合はEXIT文 IF hoge = NULL EXIT; END IF; END LOOP; FOR-LOOP FOR count IN 0..5 LOOP --処理とか END LOOP; カウントループ0から開始して5回回す。 WHILE-LOOP WHILE hoge = NULL LOOP --処理 END L…

サブプログラム

プロシージャー内の実行部で処理を行う前に宣言部で記述しておくと、実行部でそれを呼び出すことが可能になる。 CREATE OR REPLACE PROCEDURE hoge ( inParam in VARCHAR2, outParam OUT NUMBER ) IS CURSOR curTest IS SELECT xxx, … WHERE … ; PROCEDURE p…

SQLDeveloperで文字がばけばけ

SQLを開いてみたら文字化けしていたので、 ツール -> プリファレンス -> 環境 -> エンコーディングで「UTF-8」にしたら直った。

ファイル名をリストに出力する方法

Windowsのコマンドであるフォルダとそのサブフォルダのファイル名をリストに出したい場合 dir /b/a-d/s > list.txt意味: /b ファイル名だけを取り出す /a-d フォルダ以外(つまりファイル)だけを取り出す /s サブフォルダも対象にする