如何使用Zend框架(1.8.3)将两个表连接成两个不同的数据库

时间:2013-11-19 03:54:44

标签: php mysql database zend-framework left-join

我已经找到了这个问题:ZEND FW : Joining two tables from different databases。但下面的答案并没有解决这个问题。

我在项目中使用了Zend Framework(1.8.3)。它过去只使用一个数据库。最近数据库发生了变化。现在,当用户打开我的网站时,我应该连接到两个数据库。然后我的代码中有一些左连接操作。类似的代码如下:

...

public static function getAdapter () {
    $db = Zend_Db::factory( 'PDO_MYSQL', $GLOBALS['g_config']['db']['params'] );
    return $db;
}

---------------------------------------------------------------------------------
private $_db;

...

public function __construct () {
    $this->_db = Model_DbTable_Abstract::getAdapter();
}

public function getUnits () {
    $objSelect = $this->_db->select();
    $objSelect->from( 'table_unit', array('*') );
    $objSelect->joinLeft( 'user',
                          'table_unit.ucid=user.ucid',
                          array('user_name') );
    $objSelect->joinLeft( 'table_position', 
                          'table_unit.position_id=table_position.id',
                          array('position_name' => 'name') );
    $objSelect->where( 'table_unit.status=?', 'SOMETHING' );
    $arrRes = $this->_db->fetchAll($objSelect);
    return $arrRes;
}

现在表'user'在另一个数据库中。如何进行'joinLeft'操作以获得相同的结果?

0 个答案:

没有答案
相关问题