Обновлен (dev) сайт Cake PHP, и ему пришлось сменить драйверы базы данных с ADO на собственный драйвер SQL Server, так как ADO больше не поддерживается в Cake 1.3, I. Новый драйвер SQL Server установлен в PHP, отображается в PHPinfo () и должен работать, но когда я пытаюсь загрузить страницу, используя базу данных, я получаю эту ошибку:
Warning (2): sqlsrv_query() expects parameter 1 to be resource, boolean given
[APP\plugins\datasources\models\datasources\dbo\dbo_sqlsrv.php, line 184]
Warning (512): SQL Error: An invalid parameter was passed to sqlsrv_query.
[CORE\cake\libs\model\datasources\dbo_source.php, line 684]
Query: SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES
Похоже, что происходит, мое соединение не установлено в драйвере dbo_sqlsrv.php; переменная "$this->connection
" должна быть ресурсом соединения, а затем передаваться в sqlsrv_query (), и это явно бул, что неправильно (я попытался вывести переменную, но она ничего не отображает).
Именно здесь ДОЛЖНО быть установлено соединение:
sqlsrv_connect($this->config['host'] . $port, $params)
Печать переменных, которые были переданы, дает мне это:
SRV, 1433 Array ( [Database] => DB [CharacterSet] => char
[MultipleActiveResultSets] => [UID] => sa [PWD] => password )
Каждый из этих параметров является правильным, есть ли определенный способ, которым я должен отформатировать или изменить массив конфигурации базы данных для этого драйвера, или мне чего-то не хватает?