SELECT a,b,c FROM hoge WHERE 1=1 AND a>10 AND a<20
oci_fetch_array
oci_fetch_row($sth)はNULLの要素を返してくれないのでoci_fetch_array($sth,OCI_NUM|OCI_RETURN_NULLS)を使う
http://manual.xwd.jp/function.oci-fetch-array.html
TNSの設定
複数のOracleサーバに接続する場合、tnsnames.oraに追加する
HOGE = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.10)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = hoge) ) ) PIYO = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.11)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = piyo) ) )
OracleでLIMITを実装する
oracleユーザーに対するシェル制限の設定
/etc/security/limits.confに次の行を付け加える
oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536
全ユーザの設定を変える気はないので、oracleユーザの制限のみを変更する
/etc/profileに次の行を付け加える
if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/bash" ]; then ulimit -u 16384 -n 65536 fi fi
bash以外のシェル環境は無視する
sqlplus
rlwrapがsqlplusでも使える。ナシの状態にはもう戻れないくらい便利。
http://d.hatena.ne.jp/kenhama/20061123/1164243568