在程序中连接另外一个数据库出现错误
我使用ci版本是最新的1.7版本,数据库的装载我让它自动装载的(在autoload里面配置了),并且可以读取数据库没有问题。
现在我需要读取另外一个数据库,我按照手册上步骤,在控制器程序总做了如下设置
$config['hostname'] = "localhost";
$config['username'] = "myusername";
$config['password'] = "mypassword";
$config['database'] = "mydatabase";
$config['dbdriver'] = "mysql";
$config['dbprefix'] = "";
$config['pconnect'] = FALSE;
$config['db_debug'] = TRUE;
$config['cache_on'] = FALSE;
$config['cachedir'] = "";
$config['char_set'] = "utf8";
$config['dbcollat'] = "utf8_general_ci";
$this->load->database($config);
但是提示错误,用的数据库还是默认配置的那个。
我看了手册还是没有解决,请大家帮忙看看。谢谢。 要用$objAnotherDatabase=&DB($config);获取另外一个数据库的对象 非常感谢!真的可以啊。 那手册上说的是错误的吗? $CI->db只能指向一个数据库,没有内部方法切换到其他数据库的说 手册写的没有问题,仔细看一下。 你的配置文件有问题,看我的
$active_group = "default";
$active_record = TRUE;
$db['default']['hostname'] = "192.168.1.11";
$db['default']['username'] = "root";
$db['default']['password'] = "";
$db['default']['database'] = "db1";
$db['default']['dbdriver'] = "mysql";
$db['default']['dbprefix'] = "";
$db['default']['pconnect'] = TRUE;
$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['ydd']['hostname'] = "192.168.1.11";
$db['ydd']['username'] = "root";
$db['ydd']['password'] = "";
$db['ydd']['database'] = "db2";
$db['ydd']['dbdriver'] = "mysql";
$db['ydd']['dbprefix'] = "";
$db['ydd']['pconnect'] = FALSE;
$db['ydd']['db_debug'] = TRUE;
$db['ydd']['cache_on'] = FALSE;
$db['ydd']['cachedir'] = "";
$db['ydd']['char_set'] = "utf8";
$db['ydd']['dbcollat'] = "utf8_general_ci";
默认default.
要访问第二个
$DB2 = $this->load->database('ydd', TRUE);
$query = $DB2->query('your sql');
页:
[1]