background image

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

); 


?>