1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
try { // tnsnames.oraの内容 $tns = "(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = 'インスタンス名') ) )"; $sql = null; $res = null; $dbh = null; // DB接続 $dbh = new PDO('oci:dbname='.$tns,'ユーザー名', 'パスワード'); print '---------------DB接続成功------------------</br>'; $sql = "SELECT * FROM emp"; $res = $dbh->query($sql); $result = $res->fetchAll(); foreach( $result as $value ){ print $value['EMP_NAME']."<br>"; } // DBクローズ $dbh = null; } catch (PDOException $e) { print "ERROR: " . mb_convert_encoding($e->getMessage(),"UTF-8","SJIS") . "\n"; die(); } exit; |
PDOのオラクル対応がなかなかうまくできずに苦戦しました。
対策1以下をダウンロードし
oracle instant clientの32bitを、phpフォルダ、phpフォルダ\extにコピー
対策2php.iniの
extension=php_oci8_12c.dll の”;”を除去し、設定を有効にした
extension=php_pdo_oci.dllの”;”を除去し、設定を有効にした
対策3PCの再起動
メルマガ登録をお願いします。
素敵な?情報がいつもあなたに届くようになります。(itmnewsの記事が届きます。)お役に立つかどうかわかりませんが頑張りますっ。登録してみてください。