Все 32Bit. Windows 2018 Сервер. PV SQL v10 (я не могу обновить это)
PHP 5.3.28 (я мог бы обновить это до 5.6.x) 7.x Слишком много сломалось бы
Я пробовал везде искать пример подключения PHP к Pervasive DB с помощью PDO. Мне удалось подключиться, используя следующий не PDO-соединитель:
$conn = odbc_connect("demodata","","");
if(!$conn) die("Could not connect");
Глядя на примеры из https://docs.actian.com/psql/psqlv13/index.html#page / odbc% 2Fodbcadm.htm% 23ww1213912 Я обнаружил, что должен быть используя что-то вроде:
try {
$conn = new PDO("odbc:Driver={Pervasive ODBC Client Interface};ServerDSN=demodata;");
if(!$conn) die("Could not connect");
}
catch (PDOException $e) {
echo $e->getMessage();
exit;
}
Я также попытался:
$conn = new PDO("odbc:Driver={Pervasive ODBC Client Interface};ServerName=localhost;SeverDSN=demodata;");
$conn = new PDO("odbc:Driver={Pervasive ODBC Client Interface};ServerName=localhost;SeverDSN=DEMODATA;");
Когда я это сделаю. Я получаю сообщение об ошибке:
SQLSTATE [HY000] SQLDriverConnect: -1206 [распространяющийся] [ODB C интерфейс клиента] [LNA] [распространяющийся] [ODB C интерфейс механизма] [запись данных Менеджер] Файл без базы данных или поврежденный файл базы данных.
Но я знаю, что он не поврежден. Я могу подключиться и выполнить запросы другим способом. Просто очень хотелось бы иметь возможность использовать PDO. Когда я делаю тест из Pervasive ODB C Client DSN Setup. Я получаю соединение успешно.
Чего мне не хватает?