Как видно из названия, у меня проблемы с подключением к MSSQL из PHP-скрипта.
Настройка: -
- PHP работает на сервере Apache Linux.
- Microsoft SQL Server 2008 установлен на компьютере с XP.
- У меня включены удаленные подключения на сервере MSSQL.
- База данных bggs существует.
- База данных работает (я вижу зеленую стрелку).
- У меня нет брандмауэра на XP Machine.
Если у вас есть какие-либо вопросы по отладке, не стесняйтесь спрашивать.
Я использую следующий тестовый скрипт.
<code><?php
include('adodb5/adodb.inc.php');
$db =& ADONewConnection('odbc_mssql');
$db->debug = true;
$dsn = "Driver={SQL Server};Server=ozmodiar;Database=bggs;";
$db->Connect($dsn,'user','password');
$rs = $db->Execute('select * from admin_users');
print "<pre>";
print_r($rs->GetRows());
print "
";
?>
Получение следующего результата.
Предупреждение: odbc_connect () [function.odbc-connect]: ошибка SQL: [unixODBC] [Driver Manager] Не найдено имя источника данных и не указан драйвер по умолчанию, состояние SQL IM002 в SQLConnect в / mnt / filestore / vhost /bggs/hr_database/Dev/includes/adodb5/drivers/adodb-odbc.inc.php в строке 60
(odbc_mssql): SET CONCAT_NULL_YIELDS_NULL OFF
Предупреждение: odbc_exec (): предоставленный аргумент не является допустимым ресурсом ODBC-Link в /mnt/filestore/vhost/bggs/hr_database/Dev/includes/adodb5/drivers/adodb-odbc.inc.php в строке 530
IM002: [unixODBC] [Driver Manager] Не найдено имя источника данных и не указан драйвер по умолчанию
ADOConnection._Execute (SET CONCAT_NULL_YIELDS_NULL OFF, false) строка 1017%, файл: adodb.inc.php
ADOConnection.Execute (SET CONCAT_NULL_YIELDS_NULL OFF)% строка 62, файл: adodb-odbc.inc.php
ADODB_odbc._connect (Driver = {SQL Server}; Сервер = 192.168.70.130; База данных = bggs ;, sa, knd121,)% строка 524, файл: adodb.inc.php
ADOConnection.Connect (Driver = {SQL Server}; Сервер = 192.168.70.130; База данных = bggs ;, sa, knd121)% строка 9, файл: test_db.php
Driver = {SQL Server}; Сервер = 192.168.70.130; База данных = bggs ;: [unixODBC] [Driver Manager] Имя источника данных не найдено, и драйвер по умолчанию не указан
(odbc_mssql): выберите * из admin_users
Предупреждение: odbc_exec (): предоставленный аргумент не является допустимым ресурсом ODBC-Link в /mnt/filestore/vhost/bggs/hr_database/Dev/includes/adodb5/drivers/adodb-odbc.inc.php в строке 530
IM002: [unixODBC] [Driver Manager] Не найдено имя источника данных и не указан драйвер по умолчанию
ADOConnection._Execute (выберите * из admin_users, false)% строка 1017, файл: adodb.inc.php
ADOConnection.Execute (выберите * из admin_users)% строка 10, файл: test_db.php
Неустранимая ошибка: вызов функции-члена GetRows () для необъекта в /mnt/filestore/vhost/bggs/hr_database/Dev/includes/test_db.php в строке 12