ODBC источник данных Windows не работает - PullRequest
0 голосов
/ 07 сентября 2018

Я позволю себе опубликовать свою проблему, так как я искал решение более двух часов, не находя ни малейшего решения.

Контекст: я хочу подключиться к базе данных Access благодаря PHP PDO. Для этого у меня есть следующий код:

public function connect () {
    $this->dsn = 'odbc:Driver={Microsoft Access Driver (*.mdb)};charset=UTF-8;Dbq='.$this->dbway.';Uid=;Pwd=;';
    $this->user = '';
    $this->password = '';
    try {
        $this->pdo = new PDO($this->dsn, $this->user, $this->password);
        die("'eee");
    }catch (\PDOException $e) {
        die('Error  : ' . $e->getMessage());
    }
}

$ this-> dbway = абсолютный путь к базе данных .mdb

Когда я пытаюсь это сделать, я получаю такой ответ: Ошибка:: SQLSTATE [IM002] SQLDriverConnect: 0 [Microsoft] [Gestionnaire de pilotes ODBC] Источник не может быть интуитивно понятен и не является пилотным

Очевидно, я пытался найти решение, прежде чем искать в интернете.

Я проверил в администрировании источников данных ODBC, в «Системных источниках данных», у меня есть: Имя: Microsoft Access Driver Платформа: 32 бита Драйвер: Microsoft Access Driver (* .mdb)

Поэтому я попытался добавить то же самое в пользовательские источники данных odbc, но безуспешно.

Я также пытался добавить драйвер Microsoft Access (* .mdb, * .accdb), который всегда возвращает одну и ту же ошибку.

Более того, я проверил в php.ini и phpForApache.ini, что расширение = php_odbc.dll и расширение = php_pdo_odbc.dll действительно активно в расширениях PHP, и это так

Признаюсь, я не знаю, где искать и откуда моё беспокойство.

Зная, что база данных присутствует и что в источниках данных ODBC я вижу рассматриваемый драйвер, я не понимаю, почему до сих пор не могу покорить меня.

Спасибо тем, кто найдет время, чтобы прочитать меня,

хорошего дня :) 1026 *

...