Php CI 操作多个数据库的代码
最近有个需求,做一个独立后台出来,这个独立后台有单独的库,单独的
url,单独…。但
是,这里边只是一些基础数据,而使用者需要通过该库查看另一个库里的统计数据。这就带
来一个问题:我需要在控制器里边可以同时操作两个数据库,而且这两个库毫不相干
其实,这不是什么难事,因为刚入手
CI,所以还是费了一番周折。好在有手册。
找到数据库配置文件,添加一个新的库的连接信息。
$config
[XX]。
在控制器里边,
a)
$this
->xx =
$this
->load->database(‘XX', TRUE) tip:XX 表示你配置的数据库信息
数组的键名,后边建议设置为
TRUE,分别表示返回连接 ID 和启用 ActionRecord 类
b) 然后在该控制器里边你就可以用
$this
->xx->query()来查询你的另一个库的数据。
而你另一个库是不需要建立
modle 文件的
代码如下
:
<?php
function
__construct()
{
parent::__construct();
$this
->xx =
$this
->load->database('XX', TRUE);
$this
->load->model('默认库表名');
}
function
index()
{
//现在可以用$this->xx->query()来执行 XX 库的 sql 了
$this
->xx->query(
$sql
);
}
?>