2010-10-18 43 views
3

我有一個客戶想要將數據存儲在具有多種語言(英語,法語等)的MySQL數據庫中,並且能夠檢索數據(使用相同的指定語言)。即:我們有一個產品(varchar)的英文說明,我們打算用法語重寫,然後在服務器端找到我們需要的語言環境描述。用戶數據的國際化

我想用XML語言標記包裝數據,然後解析數據?

從用戶數據的角度來看迎合多種語言的最佳方法是什麼?那裏有框架嗎?

Ĵ

回答

3

我認爲,你可以用一個主解決問題 - 詳細信息表型號:

TABLE Product 
-------------------- 
ID 
ID_MANUFACTURER 
EAN13  
WHATEVER 

TABLE Product_I18n 
--------------------- 
ID_PRODUCT 
ID_LOCALE 
DESC 

當你在一定的語言環境來訪問數據,你必須通過的語言環境String的查詢,但你不需要與本地化的XML結構作鬥爭......

+0

+1。這對於動態數據來說是最好的想法,對於靜態來說,使用資源會更好。該解決方案唯一的問題是JOIN將被要求(儘管它可以通過一些View從用戶角度隱藏)。 – 2010-10-18 11:44:12

0

我並不確切地知道,做這樣的機制存在,但如果不是,我會在存儲格式的編碼$ encoded_text數據,如UTF-8 $ #####。

+1

UTF不是所有問題的答案,但是你說得對,在這種情況下,一些Unicode轉換格式(UTF-8或UTF- 16)需要同時用於存儲和交換數據。 – 2010-10-18 11:48:45

+0

恩,實際上我的意思是在字段的開頭指定編碼,並使用它解碼所有剩餘的文本。 – 2010-10-19 12:51:33

0

這是ResourceBundle的意思;大多數人使用基於屬性的實現,但是您可以輕鬆地編寫由數據庫支持的實現。