CodeIgniter - 调用未定义函数 sqlsrv_connect() - 驱动程序似乎已加载(PHP 版本:8.0.3)
CodeIgniter - Call to undefined function sqlsrv_connect() - Driver seems to be loaded (PHP Version: 8.0.3)
我必须为我的公司创建一个需要连接到 Microsoft SQL 服务器的项目。我按照说明在我的网络服务器上安装了服务器驱动程序。如果我 运行 phpinfo();
或 print_r(PDO::getAvailableDrivers());
我得到 sqlsrv
结果。
问题是如果我尝试通过 CodeIgniter 连接到数据库服务器,我会收到错误消息
Call to undefined function sqlsrv_connect()`
但是如果我尝试通过 new PDO("sqlsrv:Server=" . $this->_serverName . ";Database=" . $this->_database, $this->_uid, $this->_pwd);
连接到服务器,它完全可以正常工作。
这是我来自 CodeIgniter 的 database.php:
$active_group = 'default';
$query_builder = TRUE;
$db['default'] = array(
'dsn' => '',
'hostname' => 'localhost',
'username' => 'jderigs',
'password' => 'Mumsili1',
'database' => 'chs_001',
'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
);
这是 print_r(PDO::getAvailableDrivers());
的结果:
Array
(
[0] => mysql
[1] => sqlite
[2] => sqlsrv
)
我完全不知道我做错了什么。希望你们中有人能帮助我。
在一位友好用户的帮助下,我发现我在配置网络服务器时犯了一个错误。我不知道必须有一个名为 sqlsrv
.
的部分
重装驱动,一切正常
我必须为我的公司创建一个需要连接到 Microsoft SQL 服务器的项目。我按照说明在我的网络服务器上安装了服务器驱动程序。如果我 运行 phpinfo();
或 print_r(PDO::getAvailableDrivers());
我得到 sqlsrv
结果。
问题是如果我尝试通过 CodeIgniter 连接到数据库服务器,我会收到错误消息
Call to undefined function sqlsrv_connect()`
但是如果我尝试通过 new PDO("sqlsrv:Server=" . $this->_serverName . ";Database=" . $this->_database, $this->_uid, $this->_pwd);
连接到服务器,它完全可以正常工作。
这是我来自 CodeIgniter 的 database.php:
$active_group = 'default';
$query_builder = TRUE;
$db['default'] = array(
'dsn' => '',
'hostname' => 'localhost',
'username' => 'jderigs',
'password' => 'Mumsili1',
'database' => 'chs_001',
'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
);
这是 print_r(PDO::getAvailableDrivers());
的结果:
Array
(
[0] => mysql
[1] => sqlite
[2] => sqlsrv
)
我完全不知道我做错了什么。希望你们中有人能帮助我。
在一位友好用户的帮助下,我发现我在配置网络服务器时犯了一个错误。我不知道必须有一个名为 sqlsrv
.
重装驱动,一切正常