yii2 mysql如何跨数据库联表查询?
大家讲道理
大家讲道理 2017-04-17 15:41:34
0
3
849

wp_post在blog_cn数据库中,而stat_weibo在task数据库中。现在两个数据表需要进行连表查询,该如何实现?

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回覆(3)
阿神

也要注意 這兩個資料庫在一個 mariadb實例 中。跨mariadb, 跨伺服器做join是不行的

小葫芦

重寫ActiveRecord::getDb()方法,預設回去根據配置的db component來連接資料庫。

伊谢尔伦

若兩個資料庫在同一個Mysql伺服器可以這樣做

重寫 Weibo model類別的 tableName() 方法:

public static function tableName()
{
    preg_match("/dbname=([^;]+)/i", self::getDb()->dsn, $matches);
    return $matches[1].'.weibo';
}

若兩個資料庫不在同一個Mysql伺服器中則暫時沒有解決方法

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板