2017-02-14 17 views
1

У меня странная проблема. Мой сервер работает с PHP 5.6 в течение многих лет без проблем. (WinServer Std 2K8 SP2, IIS 6, MySQL 5.6 {отдельный сервер}, PHP 5.6)PHP 5.6.x потерял возможность подключения к источнику ODBC

Мы подключаем его к серверу DB2 в нашей материнской компании. Сегодня (2017-02-14) соединение ODBC (PDO_ODBC) начало возвращаться «не удалось найти драйвер».

Excel может использовать одно и то же соединение ODBC для запроса к базе данных - соединение ODBC работает.

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

От phpinfo(): ODBC Data PDO Data

Фрагмент кода:

$dsn = "odbc:workingODBCdsn"; 
$user = "xxxx"; 
$password = "yyyy"; 
$conn = null; 
$results = array(); 

try { 
    $conn = new PDO($dsn, $user, $password); 
} catch (PDOException $e) { 
    die($e->getMessage()); 
} 

if ($conn) { 
    $qry = $conn->query($sql); 
    if ($qry) { 
     $qry->setFetchMode(PDO::FETCH_ASSOC); 
     foreach ($qry as $row) { 
      $results[] = $row; 
     } 
    } 
} 

print "<pre>" . print_r($results, true) . "</pre>"; 

//ALT Method 
$conn = odbc_connect($dsn, $user, $password); 
$results = odbc_exec($conn, $sql); 

print "<pre>" . print_r($results, true) . "</pre>"; 

Заранее спасибо за любую помощь.

+0

На основании других вопросов, просмотренных в реестре и убедитесь, что администратор ODBC ищет файл, который существует. (Драйвер IBM DB2 ODBC) –

ответ

0

например PHP Сервера переключился с IIS на IISExpress. Переключение обратно в (полный) IIS, и при условии, что все соответствующие драйверы PDO были включены, устраняла проблему.

0

Вы используете unixODBC или ibm_db2 (http://php.net/manual/en/ref.pdo-odbc.php)? Рекомендуется использовать IBM DB2 Universal Database с расширением «ibm_db2». Это быстрее и эффективнее, чем использование универсального драйвера. Он вызывает собственные функции IBM DB2 с расширением.

Отъезд DB2_ * функции из php.net IBM DB2 functions manual

+0

Из-за корпоративных политик мы не можем получить доступ напрямую –

 Смежные вопросы

  • Нет связанных вопросов^_^