2011年2月 2日

[PHP-users 35477]PHP5.3系 PEAR::MDB2 経由で SQL Server 接続

オカムラと申します。

PHP5.3系を使い PEAR::DB もしくは PEAR::MDB2 経由で SQL Server
に接続する方法を教えて下さい。
※PEAR::DBが推奨されていないことは承知しており、ここでは無視させてください

環境としては、

Windows Server 2008 Standard Edition(x86) SP2
IIS7.0
SQL Server 2008

を利用しており、
php-5.3.5-nts-Win32-VC9-x86.zip を FastCGI で動作させています。
従来通り、php_mssql.dll と ntwdblib.dll を使用して SQL Server 2008 に接続しようと
思いましたが、php_mssql.dll が php-5.3.5-nts-Win32-VC9-x86.zip に含まれていないことに気づきました。

情報を探してみるとPHP 5.3以降は、SQLSRV という Microsoft製のドライバが提供されていることが分かりました。
PHP: 導入 - Manual
http://jp2.php.net/manual/ja/intro.mssql.php

そこで、下記を参考に
 PHP から MS SQL Server を使用する方法 - monoe's blog - Site Home - MSDN Blogs
  http://blogs.msdn.com/b/osamum/archive/2010/09/27/php-ms-sql-server.aspx
php.ini に下記を追記し、
 extension=php_pdo_sqlsrv_53_nts_vc9.dll
 extension=php_sqlsrv_53_nts_vc9.dll
SQLSRV Native API と PDO API が使える状態になりました。

過去の資産である PEAR::DB と PEAR::MDB2 が動くのか確認したところ動きませんでした。

PEAR::MDB2の公式ドキュメントを参照したところ、依存関係として mssql extension という表記があり、
これが php_mssql.dll だと考えており、新たに提供された Microsoft製の SQLSRV には対応していないと
読み取りました。
http://pear.php.net/package/MDB2_Driver_mssql

PHP5.3系を使い SQL Server に接続するには、
PDO

新たに提供された SQLSRV Native 関数
を使う以外に選択肢は無いのでしょうか?
PEAR::DB と PEAR::MDB2 を使っている箇所は全て書き換える必要があるのでしょうか?

認識に間違いがある個所、別の方法等があればご教授ください。
_______________________________________________
PHP-users mailing list PHP-users@xxxxx
http://ml.php.gr.jp/mailman/listinfo/php-users
PHP初心者のためのページ - 質問する前にはこちらをお読みください
http://oldwww.php.gr.jp/php/novice.php3


投稿者 xml-rpc : 2011年2月 2日 19:50
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/101721
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。