Oracle
tkprof
desc
1つのSQL文で複数の表にINSERTする絶品テクニック(1/2) -@IT
SELECT * FROM DUAL@[DBLINK名]
execute [プロシージャ名]@[DBLINK名]('引数')
http://www6.airnet.ne.jp/~dr_mkag/Oracle/plsql/sndmil.html
http://www.geocities.jp/hacker_musasi/plsql/plsql_commit.html
http://www.seshop.com/se/edu/shikaku/omo/miti/miti_plati10.asp?educat=platinum
http://www.mars.dti.ne.jp/~o-shin/new/kowaza/body1720.html
http://otn.oracle.co.jp/cgi-bin/non/msgview_r.cgi?communityid=otn-489965&bbsid=1&no=41567&view=8
http://www.alato.ne.jp/kazu-/vb/oracle_tip.htm
参考サイト
http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/sak3sql.htm
http://www.geocities.jp/principal_focus/
実際はOracleマニュアルの方が詳しい
簡易Tips
いわゆるprint文
sqlplusでは
prompt text
PL/SQLでは、
BEGIN
dbms_output.put_line ('text...');
END
エラー時のメッセージ
sqlerrm
タブ:CHR(9) LF:chr(10) CR:chr(13)
右に文字列を埋める
select rpad(ename,20,' *') from emp;
SQLCODEよりメッセージを求める
errmsg := sqlerrm(SQLCODE);
西暦和暦変換
元号のカスタマイズはLXEGENを利用する。
id型
postgresのserial,mysqlのid型をOracleで実現
Life After Coffee » How to Create Auto Increment Columns inOracle
CREATE TABLE test
(id NUMBER PRIMARY KEY,
name VARCHAR2(30));
CREATE SEQUENCE test_sequence
START WITH 1
INCREMENT BY 1;
CREATE OR REPLACE TRIGGER test_trigger
BEFORE INSERT
ON test
REFERENCING NEW AS NEW
FOR EACH ROW
BEGIN
SELECT test_sequence.nextval INTO :NEW.ID FROM dual;
END;
/
INSERT INTO test (name) VALUES ('Jon');
INSERT INTO test (name) VALUES (’Bork’);
INSERT INTO test (name) VALUES (’Matt’);
SELECT * FROM test;
JavaからPL/SQL
http://www.ki.rim.or.jp/~kuro/Java/JDBC/JDBC-03.html
PL/SQLからJavaの呼び出し
コレクションタイプ
バックアップ・リカバリー
RMAN によって行う RecoveryManager ユーザーズ・ガイドおよびリファレンス リリース 参照
PL/SQLとShell
CODE_NUMBER=`
sqlplus -s xxx/xxx << EOF
set heading off
set feedback off
variable a number
execute test(:a)
print a
EOF
関連リンク
http://homepage3.nifty.com/eien-factory/TechNote/004.html
公式
公式サポートはサポート料金が必要です。酷いプログラムを作成するよりは、おそらくサポート料金は安いと思います。(個人ではちょっと高いですが、、)
非公式
http://www.linux.or.jp/JF/JFdocs/Oracle-8-HOWTO.html
書籍

Expert One-On-One Oracle (The Expert\'s Voice)(AA)
