1. 要新增一個語言的時候,只需要把某一國的資料庫、網頁檔各複製一份即可。
2. 修改程式的時候,可以逐國改,像現在就是英文的先改。不會一下就動到全部。
3. 搜尋效率比較高。例如,假設有400筆產品,存在各國網站資料庫,網頁瀏覽時每次只需要從400筆裡找出一篳。如果各國網站是採用合併資料庫的設計,假設有7國不同語言,7*400=2800筆。搜尋時必需同時找產品代號、國別,從2800筆裡面找一筆,效率會比較差。
合併為一個資料庫
連線的時候方便,開一個資料庫就好。程式人員直接操作資料庫的時候,只要開一個就好,不用各國資料庫都去打開,然後再去點資料表。
例如,有一筆 faq 記錄要新增到各國,各網網站分開的時候,要逐一去打開資料庫,再把 support 資料表打開,再貼上記錄。
如果是合併資料庫,開一個資料表,輸入 id,就可以看到該筆記錄在各國的不同內容,需要操作資料庫的時候應該會比較方便:
雖然直接操作資料庫其實是不好的行為,應該要寫好網站後台,用後台去做維護,但這只是舉個例子。
2. 修改程式的時候,可以逐國改,像現在就是英文的先改。不會一下就動到全部。
3. 搜尋效率比較高。例如,假設有400筆產品,存在各國網站資料庫,網頁瀏覽時每次只需要從400筆裡找出一篳。如果各國網站是採用合併資料庫的設計,假設有7國不同語言,7*400=2800筆。搜尋時必需同時找產品代號、國別,從2800筆裡面找一筆,效率會比較差。
合併為一個資料庫
連線的時候方便,開一個資料庫就好。程式人員直接操作資料庫的時候,只要開一個就好,不用各國資料庫都去打開,然後再去點資料表。
例如,有一筆 faq 記錄要新增到各國,各網網站分開的時候,要逐一去打開資料庫,再把 support 資料表打開,再貼上記錄。
如果是合併資料庫,開一個資料表,輸入 id,就可以看到該筆記錄在各國的不同內容,需要操作資料庫的時候應該會比較方便:
id | website | name | description |
PD001 | www | Air3G | description... |
PD002 | cz | Air3G | description... |
PD003 | es | Air3G | description... |
PD004 | hr | Air3G | description... |
雖然直接操作資料庫其實是不好的行為,應該要寫好網站後台,用後台去做維護,但這只是舉個例子。
各國網站分開,雖然從某個角度來說算單純,一國就一個資料庫,要新增一國,複製另一國的資料庫就好。
但是 (1)國家很久才會新增一國。 (2)如果程式上把複製功能寫好,也不用管它資料庫是獨立還是合併。甚至,合併還更好:在合併的情況下,網頁檔只有一份,不是各國一份,所以複製的話,程式寫好後,只要按個按鈕,把資料庫的內容複製即可,網頁檔是不用複製的。
沒有留言:
張貼留言