繁体   English   中英

在CodeIgniter中使用多个数据库

[英]Using Multiple Databases Within CodeIgniter

免责声明:我是网络开发的新手

场景:我正在构建一个使用ion_auth管理所有用户/管理员信息(使用MySQL数据库)的Web应用程序,每个用户都有自己的数据库(MySQL也是如此)用于核心应用程序。 我在CodeIgniter中的applicaton / config / database.php文件中自动加载了我用于ion_auth的数据库。 我使用的是标准MVC格式(与每个数据库相关的单个模型)。

问题:我需要知道如何在CodeIgniter中轻松有效地使用多个数据库。 我是否需要将两个数据库模式链接在一起,或者CodeIgniter会为我做这个吗? 是否有任何资源可以解决这个问题(我在寻找一个问题时遇到了麻烦)?

非常感谢你的帮助!

在数据库配置文件中添加与数据库编号一样多的配置组:

$db['a']['hostname'] = 'localhost';
$db['a']['username'] = 'user';
$db['a']['password'] = 'pw';
$db['a']['database'] = 'db1';
...

$db['b']['hostname'] = 'localhost';
$db['b']['username'] = 'user';
$db['b']['password'] = 'pw';
$db['b']['database'] = 'db2';
...

//set the default db
$active_group = 'a';

然后在你的模型上初始化一个类变量:

private $db_b;

并且,在构造函数中,将其设置如下

__construct()
{
   ...
   $this->db_b = $this->load->database('b', TRUE); 
}

现在你可以像往常一样使用数据库b

$this->db_b->query('YOUR QUERY');

显然是默认的如下:

$this->db->query('YOUR QUERY');

暂无
暂无

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

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