文章詳情頁
yii2 mysql如何跨數據庫聯表查詢?
瀏覽:209日期:2022-06-18 09:30:50
問題描述
wp_post在blog_cn數據庫中,而stat_weibo在task數據庫中。現在兩個數據表需要進行連表查詢,該如何實現?



問題解答
回答1:還要注意 這兩個數據庫在一個 mariadb實例 中。跨mariadb, 跨服務器做join是不行的
回答2:重寫ActiveRecord::getDb()方法,默認回去根據配置的db component來連接數據庫。
回答3:若兩個數據庫在同一個Mysql服務器中可以這樣做
重寫 Weibo model類的 tableName() 方法:
public static function tableName(){ preg_match('/dbname=([^;]+)/i', self::getDb()->dsn, $matches); return $matches[1].’.weibo’;}
若兩個數據庫不在同一個Mysql服務器中則暫時沒有解決辦法
上一條:mysql怎么修改約束啊下一條:mysql多級聯動表設計
相關文章:
1. 測試自動化html元素選擇器元素ID或DataAttribute [關閉]2. 在mac下出現了兩個docker環境3. 利用IPMI遠程安裝centos報錯!4. 運行python程序時出現“應用程序發生異常”的內存錯誤?5. spring-mvc - spring-session-redis HttpSessionListener失效6. java - Spring boot 讀取 放在 jar 包外的,log4j 配置文件,系統有創建日志文件,不寫入日志信息。7. 淺談Vue使用Cascader級聯選擇器數據回顯中的坑8. javascript - 在 model里定義的 引用表模型時,model為undefined。9. javascript - 最近用echarts做統計圖時遇到兩個問題!!10. mysql - 查詢 修改數據庫優化問題吧
排行榜

網公網安備