2012-12-10 22 views
0

看起來像一個微不足道的問題,但只是不適合我。我需要從數據庫A(新聞)獲取數據,並檢查數據庫B(新聞備份)。他們位於相同的地方,並不需要驗證(我認爲至少)。它給了我一個error 1146, table "news.news" doesnt exist.,當我嘗試在DB訪問與第二訪問不同數據庫中的表格

SELECT B.`comment` 
FROM news A, `news-backup`.`data` B 
WHERE B.source = A.rss_atom.id and B.feed = "rss-atom" 

rss_atomdata是表

回答

2

你需要在指定數據庫名和表FROM子句,試試這個:

SELECT B.comment 
FROM news.rss_atom A, news-backup.data B 
WHERE B.source = A.id AND B.feed="rss-atom" 

我希望我有你的表結構正確。

+0

是啊我通過更改我使用的數據庫擰並嘗試獲取數據,謝謝! – rodling

+0

很高興能有所幫助。 –

1

他們在不同的數據庫,這樣,除非你指定與use database A的變化(或B),你看不到所有的物體。此外,您可以嘗試將數據庫名稱設置爲要查詢的表的前綴,如果數據庫可通過相同的連接可用,並且用戶連接被授予足夠的權限來查詢兩個數據庫上的表。

這個答案可能會有幫助。 How do you connect to multiple MySQL databases on a single webpage?

1
SELECT B.`comment` 
FROM `news`.`rss_atom` A, `news-backup`.`data` B 
WHERE B.source = A.rss_atom.id and B.feed = "rss-atom" 

在猜測,如果您使用的是新聞數據庫,然後

SELECT B.`comment` 
FROM `rss_atom` A, `news-backup`.`data` B 
WHERE B.source = A.rss_atom.id and B.feed = "rss-atom" 

在新聞數據庫中沒有表的消息是一個體面的線索。

相關問題