【问题标题】:Codeigniter Not Connecting to SQL ServerCodeigniter 未连接到 SQL Server
【发布时间】:2013-07-25 08:47:51
【问题描述】:

我正在尝试使用 CodeIgniter 连接到 SQL 服务器。如果我使用 sqlsrv 驱动程序 - 我会收到一条致命错误消息,如果我使用 odbc 驱动程序 - 我会收到“无法使用提供的设置错误消息连接到您的数据库服务器”。有谁知道如何解决这个问题???我不介意怎么做,我只是想让 Codeigniter 连接到 SQL Server 数据库。

这是数据库配置文件

$db['otherdb']['hostname'] = '195.234.10.55\SQLEXPRESS';
$db['otherdb']['username'] = 'username';
$db['otherdb']['password'] = 'password';
$db['otherdb']['database'] = 'ONEDB';
$db['otherdb']['dbdriver'] = 'odbc'; // Done this in both ODBC and SQLSRV
$db['otherdb']['dbprefix'] = '';
$db['otherdb']['pconnect'] = TRUE;
$db['otherdb']['db_debug'] = TRUE;
$db['otherdb']['cache_on'] = FALSE;
$db['otherdb']['cachedir'] = '';
$db['otherdb']['char_set'] = 'utf8';
$db['otherdb']['dbcollat'] = 'utf8_general_ci';
$db['otherdb']['swap_pre'] = '';
$db['otherdb']['autoinit'] = TRUE;
$db['otherdb']['stricton'] = FALSE;

谢谢

【问题讨论】:

  • 你能显示你用来连接服务器的代码吗?
  • 您好,很抱歉回复晚了。您可以使用这些凭据与odbc_connect() 建立连接吗?另外,您是否已经连接到另一个数据库?

标签: php sql-server codeigniter-2


【解决方案1】:

(并不是要复活一个旧帖子,而是以防万一其他人正在寻找答案,并且因为这个帖子是在我搜索时出现的......)

使用本机驱动程序从 CodeIgniter 3 连接到 SQL_server 的简短分步指南:

  1. 首先从http://www.microsoft.com/en-us/download/details.aspx?id=20098 下载 PHP for SQL_server Microsoft 本机驱动程序。请注意选择适合您设置的那个。
  2. 安装到 PHP 扩展目录。

  3. 在 PHP.ini 中配置新的扩展。取消注释或附加该行(取决于选择的驱动程序版本)。即:

    extension = php_sqlsrv_55_ts.dll
    
  4. 重启 Apache。

    现在您的 PHP 设置可以连接到 SQL_server 数据库了。

  5. 通过配置 application/config/database.php 来设置你的 CodeIgniter 数据库连接

    <?php
    
        // native-driver connection
        $db['default'] = array(
            'dsn'    => '',
            'hostname' => 'SERVER\SQLEXPRESS',
            'username' => 'test_user',
            'password' => 'test_password',
            'database' => 'test01',
            'dbdriver' => 'sqlsrv',
            'dbprefix' => '',
            'pconnect' => FALSE,
            'db_debug' => TRUE,
            'cache_on' => FALSE,
            'cachedir' => 'application/cache',
            'char_set' => 'utf8',
            'dbcollat' => 'utf8_general_ci',
            'swap_pre' => '',
            'autoinit' => TRUE,
            'encrypt' => FALSE,
            'compress' => FALSE,
            'stricton' => FALSE,
            'failover' => array(),
        'save_queries' => TRUE
        );
    

在 SQL_server 2008 R2 和 SQL_server 2014 express 上从 CodeIgniter 3.0.1 测试。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-08-03
    • 2014-03-16
    • 2021-02-03
    • 2014-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-14
    相关资源
    最近更新 更多