MySQL中創(chuàng)建View可以將多個表的數(shù)據(jù)整合起來成為一個虛擬的表,可以進行各種查詢和計算。但是有時候需要跨數(shù)據(jù)庫建立View,可以使用以下方法實現(xiàn)。
步驟一:建立聯(lián)結(jié)通道
USE mysql; CREATE USER 'username'@'localhost' IDENTIFIED BY 'password'; -- 創(chuàng)建用戶名密碼 GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost' IDENTIFIED BY 'password'; -- 賦予權(quán)限 FLUSH PRIVILEGES; -- 刷新權(quán)限
這里是在mysql數(shù)據(jù)庫中創(chuàng)建了一個新的用戶,并賦予了全部權(quán)限。接下來才可以跨數(shù)據(jù)庫建立View。
步驟二:創(chuàng)建View
USE database1; CREATE VIEW view_name AS SELECT column1, column2, column3 FROM database2.table_name;
這里使用了database1中的用戶創(chuàng)建了一個View,但是查詢的表是在database2中的。
注意事項:
- 如果數(shù)據(jù)庫中含有多個庫,并且?guī)烀嗤瑫r需要加庫名來區(qū)分使用,例如:FROM database2.table_name。
- 如果使用的是非root用戶,在創(chuàng)建View時必須加上DEFINER = root@localhost,例如:CREATE VIEW view_name AS SELECT column1, column2, column3 FROM database2.table_name DEFINER = root@localhost;
以上就是跨數(shù)據(jù)庫建立View的方法,需要注意一些細節(jié)。在實際操作中,還需要考慮安全性等問題,合理控制賬號權(quán)限。
上一篇c 讀取.json文件
下一篇c 生成多層 json