2012-07-25 138 views
1

可能重複:
How do you connect to multiple MySQL databases on a single webpage?如何創建搜索引擎多個數據庫使用製作索引

我建立我的網站搜索引擎,我有6個數據庫包含許多表。

對於多個數據庫我知道我必須建立一個包含來自所有數據庫和表的信息的索引文件。

我知道如何構建在PHP和MySQL數據庫的搜索引擎,

連接到多個數據庫

mysql_connect(「hostname」, 「username」, 「password」); 
mysql_select_db(「database1」); 

mysql_connect(「hostname」, 「username」, 「password」); 
mysql_select_db(「database2」); 

和查詢這樣

"(SELECT * from database1.search_table WHERE MATCH (title, link) AGAINST(‘keyword’)) 
    Union All 
(SELECT * from database2.search_table WHERE MATCH (title, link) AGAINST(‘keyword’)" 

我想這樣做通過製作一個索引文件。

請爲此提出任何好的教程或方法,我谷歌很多次,但沒有好的結果。

+0

yes然後如果我在查詢中使用UNION ALL,生成的查詢將變得太大,所以我想創建一個存儲我所有數據庫信息的索引文件。如何製作該索引文件。我應該讓另一個數據庫包含來自數據庫的所有數據 – 2012-07-25 06:46:59

+0

我不認爲你能夠在多個數據庫上執行單個查詢 - 我認爲你必須進行單獨的查詢才能找到並自己合併數據。 – Lix 2012-07-25 06:48:48

+0

也我的問題是不重複,因爲我問的是使搜索引擎不是連接多個數據庫的方式。我知道連接到多個數據庫。 – 2012-07-25 06:49:40

回答

1

我想三種方法可以做到這一點: 1-st您可以使用多個數據庫連接。這是最重要的方法,因爲它會增加與服務器的連接。 2-nd您可以切換所選的數據庫。您可以通過在查詢中選擇數據庫來使查詢數據庫獨立。這裏有一個例子:

SELECT * FROM `database`.`table` WHERE `database`.`table`.`column`='something' 

我個人認爲第三種方式是最好的。