linux — php pdo_informix на rhel6 — дополнительная функция не реализована

Я настроил pdo_informix:

[root@cc-allplus nginx]# php -i |egrep "pdo|PDO"PDO
PDO support => enabled
PDO drivers => sqlite, sqlite2, odbc, pgsql, informix, dblib
pdo_dblib
PDO Driver for FreeTDS/Sybase DB-lib => enabled
pdo_informix
pdo_informix support => enabled
PDO_ODBC
PDO Driver for ODBC (unixODBC) => enabled
pdo_pgsql
PDO Driver for PostgreSQL => enabled
Revision =>  $Id: pdo_pgsql.c 300351 2010-06-10 12:11:19Z iliaa $
pdo_sqlite
PDO Driver for SQLite 3.x => enabled

и пытается создать соединение:

try{

$dbh = new PDO ("informix:host=some.example.ru; service=50000; database=test; server=test_net; protocol=onsoctcp;DB_LOCALE=en_US.57372; CLIENT_LOCALE=en_US.57372;", "dcs_test", "********");

}catch (PDOException $e){
echo 'Failed to execute your db connection: '. $e->getMessage().'</br>'; exit;
}

И ответ:

Failed to execute your db connection: SQLSTATE=HY000, SQLSetConnectAttr: -11097 [Informix][Informix ODBC Driver]Optional feature not implemented

Googling не помог в решении этой проблемы .. любые предложения приветствуются

0

Решение

Проблема была решена.
Для тех, кто может столкнуться с такими же проблемами с Informix или другими библиотеками pdo, я хотел бы поделиться.

Моя проблема заключалась в выборе последней версии soursec PDO_INFORMIX. Как я искал и обнаружил, PHP 5.3 необходимость сообщить не позднее 1.2.6 версия.

Я обнаружил эту информацию из статьи на венгерском языке, и это был единственный пост о такой несовместимости между php и PDO_INFORMIX в целом www.

Ни одной строки такой информации ни на сайте IBM, ни на сайте источников pdo PECL … Боже, это заняло у меня несколько дней, но я это сделал!

После того, как я нашел правильную версию, мне пришлось перекомпилировать php, потому что он поместил 1.3.0 версию informix pdo в кеш и не хотел работать с более старой.

Надеюсь, это поможет!

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]