1

我在这个任务上花了很多天,直到现在我都看不到结局。在过去的一天里,我成功地在我的 PHP 环境中安装了 sqlsrv 驱动程序,但是现在当我尝试连接时,我收到了这条消息:

无法使用提供的设置连接到您的数据库服务器。

我的设置application/config/database.php是这样定义的:

$db['dbname']['hostname'] = "ENJ01\SQLEXPRESS";
$db['dbname']['username'] = "user";
$db['dbname']['password'] = "password";
$db['dbname']['database'] = "dbname";
$db['dbname']['dbdriver'] = "sqlsrv";
$db['dbname']['dbprefix'] = "";
$db['dbname']['pconnect'] = TRUE;
$db['dbname']['db_debug'] = TRUE;
$db['dbname']['cache_on'] = FALSE;
$db['dbname']['cachedir'] = "";
$db['dbname']['char_set'] = "utf8";
$db['dbname']['dbcollat'] = "utf8_general_ci";
$db['dbname']['swap_pre'] = '';
$db['dbname']['autoinit'] = TRUE;
$db['dbname']['stricton'] = FALSE;

有事吗?

这里是我的环境配置:

  • wampserver 2.4 x86
  • PHP 5.4.16
  • sqlsrv 驱动程序-> php_sqlsrv_54_ts.dll
  • 代码点火器 2.1.4
4

4 回答 4

2

大约一年前,我遇到了和你一样的麻烦。看看这里的回复,那里的人有一些很好的建议:CodeIgniter MSSQL 连接

此外,几天前在这里发布了一个帖子:CI 连接到 SQL SERVER - 也可以在那里查看我的答案,因为它解决了该特定开发人员的问题。

于 2013-10-17T16:43:24.847 回答
0

我会写评论,但我还没有所需的声誉。无论如何...

我注意到你的主机名'ENJ01\SQLEXPRESS',你试过用'localhost'代替吗?

另外,尝试将端口设置为 1433, $db['dbname']['port'] = 1433;

于 2013-10-17T16:21:19.460 回答
0

我通过设置解决了同样的问题

$ db ['default'] ['pconnect'] = FALSE;

于 2014-03-04T14:59:19.540 回答
-1

制作 1 $db['default']['pconnect'] = FALSE;.. 然后去system/database/drivers/sqlsrv/sqlsrv_driver.php

function db_pconnect()
    {
        //$this->db_connect(TRUE);
        return $this->db_connect(TRUE);
    }

function affected_rows()
{
    //return @sqlrv_rows_affected($this->conn_id);
    return @sqlsrv_num_rows($this->result_id);
}
于 2017-02-17T06:01:54.437 回答