Как я могу определить, какие драйверы доступны для использования с odbc в php (в системе Linux)?


В PHP-скриптах это выглядит так, как вы подключаетесь к базе данных odbc:

$connection = odbc_connect("Driver={SQL Server Native Client 10.0};Server=$server;Database=$database;", $user, $password);

Проблема, с которой я сталкиваюсь, заключается в том, что я не знаю, что использовать для "Driver=". То, что я туда вложил, было предусмотрено для другого сценария, который я видел. В моем сценарии все, что я делаю, это пытаюсь подключиться с помощью этой строки, но я получаю следующую ошибку:

Warning: odbc_connect(): SQL error: [unixODBC][Driver Manager]Data source name not found, and no default driver specified, SQL state IM002 in SQLConnect in /srv/www/htdocs/site/test.php on line 8

Из того, что я могу сказать, похоже, что указанный мной драйвер неверен. База данных, к которой я пытаюсь подключиться, является базой данных MSSQL, и я только планируйте запрашивать у него информацию. Есть ли способ перечислить драйверы баз данных, доступные в моей системе? Мне никогда раньше не приходилось устанавливать/настраивать какие-либо драйверы подобным образом (я никогда не делал ничего подобного; вся работа с php, которую я выполнял в прошлом, была связана с MySQL). Кроме того, я не хочу компилировать другое программное обеспечение в свою систему (если это возможно); Я бы предпочел установить все пакеты из репозиториев.

Author: EGr, 2013-06-29

1 answers

У вас должен быть файл с именем odbcinst.ini (возможно, в /etc или /usr/local/etc, но вы можете найти его с помощью команды odbcinst -j). Этот файл определяет ваши драйверы ODBC. Каждый драйвер назван в [] в каждом разделе.

Вы можете найти Linux ODBC полезным, поскольку он содержит подробное объяснение unixODBC, как он работает и как определять источники данных.

 4
Author: bohica, 2013-07-01 07:55:10