如何在 Codeigniter 中连接 mssql?

我正在尝试将 codeigniter 与 MSSQL 连接起来。我php.ini通过添加扩展名extension=php_sqlsrv_56_ts.dll和extension=php_pdo_sqlsrv_56_ts.dll. 但仍然面临如下 sqlsrv 错误,


错误:消息:sqlsrv_query() 期望参数 1 为资源,给定为空


sqlsrv_driver.php


function _execute($sql)

{

    $sql = $this->_prep_query($sql);

    return sqlsrv_query($this->conn_id, $sql, null, array(

        'Scrollable'                => SQLSRV_CURSOR_STATIC,

        'SendStreamParamsAtExec'    => true

    ));

}

$this->conn_id--- 这是空的。我不知道为什么它得到空值。


Codeigniter 版本:2.2 /

PHP 版本:5.6

数据库配置:


$db['default']['hostname'] = '.\sqlexpress';

$db['default']['username'] = 'UNAME';

$db['default']['password'] = '';

$db['default']['database'] = 'DBNAME'; 

$db['default']['dbdriver'] = 'sqlsrv';

$db['default']['dbprefix'] = '';

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

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

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

$db['default']['cachedir'] = '';

$db['default']['char_set'] = 'utf8';

$db['default']['dbcollat'] = 'utf8_general_ci';

$db['default']['swap_pre'] = '';

$db['default']['autoinit'] = TRUE;

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

注意:过去 3 天我一直坚持这个,我已经尝试过了。由于我是 MSSQL 的新手,所以我无法找出问题所在。在这方面的任何帮助将不胜感激。提前致谢。

http://img1.mukewang.com/64707d97000110ec04380177.jpg

MM们
浏览 126回答 1
1回答

至尊宝的传说

您正在运行不受支持的 PHP 版本。您需要升级 PHP 版本才能继续接收安全更新。请这样做还可以让您访问更新版本的 sqlsrv 驱动程序。这很重要,因为您当前的驱动程序无法连接到较新版本的 SQL Server。您已经声明您正在使用 SQL 2017。但是,根据Microsoft PHP Drivers for SQL Server Support Matrix,PHP 5.6 版只能运行 3.2 版的 sqlsrv 驱动程序,而 3.2 版的驱动程序仅支持 SQL 2014 和以下。
打开App,查看更多内容
随时随地看视频慕课网APP