繁体   English   中英

Codeigniter中如何连接mssql?

[英]How to connect mssql in Codeigniter?

我正在尝试将 codeigniter 与 MSSQL 连接起来。 我通过添加扩展extension=php_sqlsrv_56_ts.dllextension=php_pdo_sqlsrv_56_ts.dllphp.ini文件进行了所有可能的更改。 但仍然面临如下 sqlsrv 错误,

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

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 --- 这是空的。 我不知道为什么它得到 null 值。

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 的新手,我无法找出问题所在。 对此的任何帮助将不胜感激。 提前致谢。

在此处输入图像描述

您正在运行不受支持的 PHP 版本。 您需要升级 PHP 版本才能继续接收安全更新。 请参阅https://php.net/supported-versions.php

这样做还可以让您访问更新版本的 sqlsrv 驱动程序。 这很重要,因为您当前的驱动程序无法连接到较新版本的 SQL 服务器。

You've stated you're using SQL 2017. However as per the Microsoft PHP Drivers for SQL Server Support Matrix , with PHP version 5.6 you can only run version 3.2 of the sqlsrv drivers, and version 3.2 of the drivers only supports SQL 2014 and以下。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM