Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从Codeigniter连接到IBM DB2_Php_Codeigniter_Pdo_Db2_Odbc - Fatal编程技术网

Php 从Codeigniter连接到IBM DB2

Php 从Codeigniter连接到IBM DB2,php,codeigniter,pdo,db2,odbc,Php,Codeigniter,Pdo,Db2,Odbc,我以前从未使用过DB2。我正在尝试从codeigniter连接。我在数据库配置文件中使用了以下设置: $db['default']['hostname'] = 'ipAddress'; $db['default']['port'] = 'portNumber'; $db['default']['username'] = 'uname'; $db['default']['password'] = 'pword'; $db['default']['database'] = 'myDBName'; /

我以前从未使用过DB2。我正在尝试从codeigniter连接。我在数据库配置文件中使用了以下设置:

$db['default']['hostname'] = 'ipAddress';
$db['default']['port'] = 'portNumber';
$db['default']['username'] = 'uname';
$db['default']['password'] = 'pword';
$db['default']['database'] = 'myDBName';
//$db['default']['dbdriver'] = 'pdo';
$db['default']['dbdriver'] = 'odbc';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = FALSE;
$db['default']['db_debug'] = TRUE;
$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;
它抛出以下错误:

Unable to connect to your database server using the provided settings.
Filename: C:\xampp\htdocs\archive\system\database\DB_driver.php

再说一次,我对DB2完全是新手,所以如果我需要安装任何额外的东西(我假设驱动程序已经包含在我最新的CI下载中)或者我需要定义dsn(如果我需要,请告诉我如何做),请务必告诉我,我将非常感谢您的帮助。

是的,您需要安装IBM Data Server客户端软件包,或者至少安装运行时客户端。从下载相应的驱动程序


本手册解释了如何。

您需要将完整连接添加到hostname参数,如下代码所示

$active_group = 'default';
$active_record = FALSE;
$db['default']['hostname'] = "driver={IBM db2 odbc DRIVER};Database=DBNAME;hostname=localhost;port=50000;protocol=TCPIP;" . "uid=username; pwd=password";
$db['default']['username'] = 'username';
$db['default']['password'] = 'password';
$db['default']['database'] = 'DBNAME.SCHEMANAME';
$db['default']['dbdriver'] = 'odbc';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = FALSE;
$db['default']['db_debug'] = TRUE;
$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;

数据库服务器有错误吗?谢谢你的回复。将通过这些链接返回,希望能起作用。继续获取此错误“程序无法启动,因为您的计算机中缺少php5.dll”,谷歌搜索了该错误,并按照建议尝试了不同的php_uu5;.dll文件,但没有成功。帮助某人解决此问题。。对于那些在CodeIgniter中使用DB2或dashDB的用户,除了上面的项目之外,还想添加此链接: