Zend Framework и SQL Server - PullRequest
       26

Zend Framework и SQL Server

0 голосов
/ 11 марта 2009

Я пытаюсь использовать Zend Framework с SQL Server 2005 Express (через Pdo_Mssql с установкой wamp ), но кажется, что pdo не может подключиться к SQL. Это мой код:

require '../application/bootstrap.php'; 

try {
    $db = Zend_Db::factory('Pdo_Mssql', array(
    'host'     => 'localhost',
    'username' => 'sa',
    'password' => 'verystrongpass',
    'dbname'   => 'msdb'
));
    $db->getConnection();
} catch (Zend_Db_Adapter_Exception $e) {
    $e->getMessage();
} catch (Zend_Exception $e) {
   $e->getMessage();
}


$sql = 'SELECT * FROM table';

$result = $db->fetchAll($sql);

echo "----------------" . var_dump($result);

и результат ошибки всегда:

Неустранимая ошибка: необработанное исключение 'Zend_Db_Adapter_Exception' с сообщение 'SQLSTATE [01002] Невозможно подключиться: SQL Server недоступен или не существует . (серьезность 9) 'в C: \ WAMP \ Bin \ PHP \ php5.2.5 \ Lib \ Zend \ Db \ адаптер \ PDO \ Abstract.php: 130 Трассировка стека: # 0 C: \ WAMP \ Bin \ PHP \ php5.2.5 \ Lib \ Zend \ Db \ адаптер \ PDO \ Mssql.php (135): Zend_Db_Adapter_Pdo_Abstract -> _ подключения ()

1 C: \ WAMP \ Bin \ PHP \ php5.2.5 \ Lib \ Zend \ Db \ адаптер \ Abstract.php (389): Zend_Db_Adapter_Pdo_Mssql -> _ подключения ()

2 C: \ WAMP \ Bin \ PHP \ php5.2.5 \ Lib \ Zend \ Db \ адаптер \ PDO \ Abstract.php (205): Zend_Db_Adapter_Abstract-> запрос ( 'SELECT * FROM t ... ', Array)

3 C: \ WAMP \ Bin \ PHP \ php5.2.5 \ Lib \ Zend \ Db \ адаптер \ Abstract.php (616): Zend_Db_Adapter_Pdo_Abstract-> запрос ( 'SELECT * FROM t ... ', Array)

4 C: \ Документы и Настройки \ Luca \ Documenti \ Workspace \ Web \ дб \ Public \ index.php (27): Zend_Db_Adapter_Abstract-> fetchAll ('SELECT * FROM t ...') # 5 {main} брошен в C: \ wamp \ bin \ php \ php5.2.5 \ lib \ Zend \ Db \ Adapter \ Pdo \ Abstract.php по линии 130

Итак, у кого-нибудь есть опыт работы с ZF + SQL-сервером, SQL-серверу нужна особая конфигурация? Во время установки я указал только использование istance по умолчанию и использование смешанной аутентификации. Более того, я могу успешно соединиться с БД через Microsoft SQL Server Management Studio Express.

Ответы [ 3 ]

1 голос
/ 11 марта 2009

Все установки SQL Server Express на именованном экземпляре SQLEXPRESS, а не на экземпляре по умолчанию - см. this .

Так что ваш хост должен выглядеть как

'host'     => 'localhost\SQLEXPRESS'
0 голосов
/ 21 января 2013

Я думаю, что ваш

'host' => 'localhost\SQLEXPRESS' конфигурация

должно быть как:

'host' => 'computer_name\SQLEXPRESS'

0 голосов
/ 07 октября 2009

Можете ли вы проверить в файле PHP.ini, что вы включили Pdo_Mssq.dll

Если не убрать ";" перед Pdo_Mssql.dll

Dan

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