Microsoft SQL Server 2008 R2(SQLEXPRESS)とともにXAMPPを介してインストールされたPHPバージョン5.3.8を使用しています。ドライバが正しくインストールされていると思います)、正しい行を追加しましたphp.iniに(正確には、extension = php_pdo_sqlsrv_53_ts_vc9.dll)。
私はそのようにサーバーに接続しようとしています:
try {
$DBH = new PDO("mssql:Host=xxxx;dbname=xxxx", 'xxxx', 'xxxx');
} catch(PDOException $e) {
echo $e->getMessage();
}
「ドライバーが見つかりませんでした」というエラーが表示され、問題を解決するためにあらゆる方法で調整しました。他のすべての種類のドライバーを試しましたが、Apacheが起動時にエラーを出さないのはこれだけです。 phpinfo()を実行すると、0に設定されているpdo_sqlsrv.log_severityを除いて、pdo_sqlsrvフィールドはすべて空白です。
Microsoft からドライバをDLし、2.0と3.0の両方を試しました
どんなアドバイスでも素晴らしいです!!
mssql
は古い方法です。sqlsrv
の方が適切です。実際、拡張機能は(extension = php_pdo _sqlsrv_ 53_ts_vc9.dll)とも呼ばれます;)
try {
$DBH = new PDO("sqlsrv:Server=xxxx;Database=xxxx", 'xxxx', 'xxxx');
} catch (PDOException $e) {
echo $e->getMessage();
}
お役に立てれば!
これがCentOS x86_64マシンの実行によるものかどうかはわかりませんが、sqlsrv
がドライバーとして機能しなかったため、dblib
を使用する必要がありました。
try {
$DBH = new PDO("dblib:Host=xxxx;dbname=xxxx", 'xxxx', 'xxxx');
} catch (PDOException $e) {
echo $e->getMessage();
}
ソースと感謝: http://grover.open2space.com/content/use-php-and-pdo-connect-ms-sql-server