使用 PDO 连接到 Access 数据库 (.accdb)


Using PDO to connect to Access database (.accdb)

我在连接到 Access 数据库(特别是具有 .accdb 扩展名的 Access 2013 数据库)时遇到困难。这是我尝试运行的代码:

$dbName = $_SERVER["DOCUMENT_ROOT"] . "/test/testdb.accdb";
echo $dbName."<br />";
if (!file_exists($dbName)) {
    die("Could not find database file.<br />".$dbName);
}
try {
    $db = new PDO("odbc:DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};;Dbq=$dbName");
} catch(PDOException $e) {
    echo "Error: ".$e->getMessage()."<br />";
}

我已经确保testdb文件存在于正确的文件夹中,但是当我尝试创建新的PDO时,我收到以下错误:"找不到驱动程序"。

现在,我已经回到我的ini设置并确认我选择了以下扩展:

php_curl
php_gd2
php_mbstring
php_mssql
php_mysql
php_mysqli
php_pdo_mssql
php_pdo_mysql
php_pdo_sqlite

我在 Windows 7 机器上使用 WAMP 版本 2.4 和 PHP 5.4.16。 我将不胜感激我能得到的任何帮助。

您必须安装(如果您的发行版有)或编译 pdo-odbc 通用驱动程序: http://php.net/manual/en/ref.pdo-odbc.php