Codeigniter - SQLServer数据库连接错误

时间:2016-03-17 23:48:34

标签: php sql-server web tcp-ip codeigniter-3

有一个问题和问题需要分享。 所以我尝试将Codeigniter 3.0.5连接到SQL Server。但是无论我怎么做,我总会得到这个错误。

    A Database Error Occurred
    Unable to connect to your database server using the provided settings.
    Filename: core/CodeIgniter.php
    Line Number: 500

我的设置

    $active_group = 'default';
    $query_builder = TRUE;

    $db['default'] = array(
        'dsn'   => '',
        'hostname' => 'MYSQLSERVERHOSTNAME',
        'username' => '',//Empty I dont use any (Windows Auth)
        'password' => '',//Dont use any
        'database' => 'MYSQLSERVERDATABASENAME',
        'dbdriver' => 'sqlsrv',
        'dbprefix' => '',
        'pconnect' => FALSE,
        'db_debug' => (ENVIRONMENT !== 'production'),
        'cache_on' => FALSE,
        'cachedir' => '',
        'char_set' => 'utf8',
        'dbcollat' => 'utf8_general_ci',
        'swap_pre' => '',
        'encrypt' => FALSE,
        'compress' => FALSE,
        'stricton' => FALSE,
        'failover' => array(),
        'save_queries' => TRUE
    );

我已启用TCP / IP并在IPAll上添加了1433端口。重启服务几次仍然出现此错误。但是,我的其他朋友的计算机可以使用此设置连接到数据库。 我使用PHP 5.6和SQLSRV32作为扩展。 有谁知道为什么?以及如何检查CI连接到数据库的错误日志?

PS:我尝试复制我的朋友CI(运行的那个),以防我在编写代码时遗漏了某些内容并删除了一些内容然后我更改了主机名,但它仍然无法正常工作。所以我的SQL安装可能有些问题,所以我试着检查控制面板中的安装......但是因为我们在同一个安装中使用了没有什么不同。在这里真的很混乱......

非常感谢!

1 个答案:

答案 0 :(得分:0)

嘿,浏览了一下后,我发现了为什么我无法连接到sqlsrv的问题。我一直想念odbc 11的车手。我在config / database.php

上编码这行后就知道了
$link = sqlsrv_connect('SQLSERVERHOSTNAME');

if (!$link) {
     print_r(sqlsrv_errors());
     die();
}

所以是的,我不知道为什么我必须首先安装这个驱动程序,因为当我问我的朋友时,他不记得安装odbc驱动程序11 手动。所以,是的,如果你是少数几个有这个奇怪问题的人之一,试着检查日志。感谢hehe:D

的任何帮助