MacOSでSQLServerに接続しようとするとエラー"could not find driver"が発生し、接続できません。
解決したいこと
Microsoftのドキュメントを見ながら作業していたのですが、一番最後のインストールテストで以下のようなエラーが発生し接続ができません。
どなたか解決方法を教えていただけないでしょうか?
発生している問題・エラー
Caught PDO exception:
could not find driver
PHP Info for troubleshooting
ドライバーはインストールしています。
Warning: microsoft/mssql-release/msodbcsql17 17.8.1.1 is already installed and up-to-date.
To reinstall 17.8.1.1, run:
brew reinstall msodbcsql17
該当するソースコード
<?php
try {
$serverName = "yourServername";
$databaseName = "yourDatabase";
$uid = "yourUsername";
$pwd = "yourPassword";
$conn = new PDO("sqlsrv:server = $serverName; Database = $databaseName;", $uid, $pwd);
// Select Query
$tsql = "SELECT @@Version AS SQL_VERSION";
// Executes the query
$stmt = $conn->query($tsql);
} catch (PDOException $exception1) {
echo "<h1>Caught PDO exception:</h1>";
echo $exception1->getMessage() . PHP_EOL;
echo "<h1>PHP Info for troubleshooting</h1>";
phpinfo();
}
?>
<h1> Success Results : </h1>
<?php
try {
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
echo $row['SQL_VERSION'] . PHP_EOL;
}
} catch (PDOException $exception2) {
// Display errors
echo "<h1>Caught PDO exception:</h1>";
echo $exception2->getMessage() . PHP_EOL;
}
unset($stmt);
unset($conn);
?>
自分で試したこと
php.iniの
;extension=pdo_mysql
;extension=mysql
をコメントアウト
httpd.confの
ServerNameを 'www.example.com:8080'から'ServerName localhost:8080' に変更
参考にした記事
0