"; switch ( c_DB_Kind ) { case "PostgresSQL": $db = pg_connect( "host=" . c_hostname . " dbname=" . c_dbname . " user=" . c_user . " password=" . c_pass ) or die("データベース接続エラー"); break; case "MySQL": $db = mysql_connect( c_hostname, c_user, c_pass ) or die("データベース接続エラー"); mysql_select_db( c_dbname, $db ); break; case "OCI": $db = OCILogon( c_user, c_pass, c_dbname ) or die("データベース接続エラー"); break; case "Oracle": $db = Ora_Logon( c_user . "@" . c_hostname , c_pass ); break; case "POCI": require_once("DB.php"); $db =& DB::connect( 'oci8://mndbuser:oracle@emmn' ); $db->setOption( 'optimize', 'portability' ); break; default: break; } //echo "【out[$db]:DB_Connect( なし )】
"; return $db; } /*============================================================================ 関数名 :DB_Close 引数 :なし 復帰値 :なし 概要 :DBからの切断 =============================================================================*/ function DB_Close( $db ) { switch ( c_DB_Kind ) { case "PostgresSQL": pg_close($db); break; case "MySQL": //必要な終了作業なし。 //(mysql_pconnectで接続しているので、スクリプト終了時に自動的にクローズする。) break; case "OCI": OCILogoff($db); break; case "Oracle": Ora_Logoff( $db ); break; case "POCI": $db->disconnect(); break; default: break; } return; } /*============================================================================ 関数名 :DB_Query 引数 :$strSQL[実行するSQL文] 復帰値 :$result[実行結果] 概要 :SQL文実行 =============================================================================*/ function DB_Query( $db, $strSQL, $blnBind = null ) { //$strSQL = strtoupper($strSQL); static $strLastSQL; //echo "【in:DB_Query( $db, $strSQL)】
"; switch ( c_DB_Kind ) { case "PostgresSQL": $result = pg_query( $db, $strSQL ); break; case "MySQL": $result = mysql_query ( $strSQL, $db ); break; case "OCI": if ( $strSQL ) { If ( null == $blnBind ) { //標準モード $result = OCIParse( $db, $strSQL ); $oeResult = @OCIExecute( $result, OCI_DEFAULT ); } Else { //標準モード $result = OCIParse( $db, $strSQL ); $oeResult = true; } } else { //直前SQL吐き出しモード return $strLastSQL; } break; case "Oracle": $result = Ora_Open($db); var_dump($strSQL); $oeResult = Ora_Parse($result, $strSQL); var_dump($result); var_dump($oeResult); $oeResult = Ora_Exec($result); var_dump($oeResult); break; case "POCI": $result = $db->query($strSQL); if( DB::isError($result)) { $oeResult = false; } break; default: break; } //echo "【out[$result]:DB_Query( $db, $strSQL)】
"; if( is_null($result) || $result === false || $oeResult === false ) { //クエリエラー $strLastSQL = null; if( c_dbg_mode == 1 ) { ?>
DBクエリエラー