PHP-соединение с MS SQLServer 2008 из Linux через PDO - PullRequest
4 голосов
/ 02 ноября 2010

Мне нужно подключиться к службе MS SQLServer 2008 из PHP на Ubuntu, и я хотел бы сделать это с помощью PDO.Я считаю, что я установил все необходимые библиотеки, и я действительно могу подключиться, используя tsql в командной строке и используя mssql_connect() в коде.Я не могу понять, что такое правильный DSN, или если есть какие-то дополнительные шаги настройки, специфичные для PDO, которые мне не хватает.

Я использую следующий DSN (где $db* переменные заполнены соответствующимизначения):

odbc:Driver=FreeTDS;SERVER=$dbServer;DATABASE=$dbSchema;UID=$dbUser;PWD=$dbPasswd"

Мое сообщение об ошибке:

PHP Fatal error:  Uncaught exception 'PDOException' with message 'SQLSTATE[IM002] SQLDriverConnect: 0 [unixODBC][Driver Manager]Data source name not found, and no default driver specified' in /home/timothy/test.php:4
Stack trace:
#0 /home/timothy/test.php(4): PDO->__construct('odbc:Driver=Fre...')
#1 {main}
  thrown in /home/timothy/test.php on line 4

Какие дополнительные этапы настройки я просмотрел?

Заранее спасибо.

1 Ответ

1 голос
/ 02 ноября 2010

Вам не нужно никаких дополнительных настроек, если вы можете подключиться с помощью tsql и расширения mssql.Вы, вероятно, просто не имеете правильный DSN. Эта документация должна помочь.Попробуйте new PDO("dblib:host=xx.xx.xx.xx;dbname=mydatabase", "username", "password");

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...