是否可以從來自兩個不同數據庫的表創建視圖?像:在不同主機上的不同數據庫上創建視圖
creative view 'my_view' as
select names as value
from host_a.db_b.locations
union
select description as value
from host_b.db_b.items;
它們目前是不同的數據庫引擎(MyISAM和InnoDB)。提前
THX
是否可以從來自兩個不同數據庫的表創建視圖?像:在不同主機上的不同數據庫上創建視圖
creative view 'my_view' as
select names as value
from host_a.db_b.locations
union
select description as value
from host_b.db_b.items;
它們目前是不同的數據庫引擎(MyISAM和InnoDB)。提前
THX
是的,你需要訪問遠程表via the FEDERATED db engine,然後create a view使用您的查詢。
但是,這是一個相當混亂的方式來解決問題 - 特別是(從您的示例查詢)你的數據被有效地分割。
此結構將不允許更新/插入視圖。即使對於updatable/insertable view,我的直覺是,如果嘗試除自動提交事務之外的其他任何事情,尤其是在混合表類型時,會遇到問題。我建議將複製視爲解決問題的更好方法。
thx的迴應,我仍在考慮如何做到這一點。我們目前在同一個數據庫中有這個視圖,它工作正常。當時/如果時間到了,那麼您只複製視圖的想法看起來就像是一個有趣的想法。 – timpone
你試過了嗎? – Kermit
爲什麼-1?因爲這會工作? – Kamil
不知道downvote。沒有嘗試,因此問題。谷歌的答案看起來相當過時 – timpone