विधि 3 के समान:
[languages]
id (int PK)
code (varchar)
[products]
id (int PK)
neutral_fields (mixed)
[products_t]
id (int FK)
language (int FK)
translated_fields (mixed)
PRIMARY KEY: id,language
तो प्रत्येक तालिका के लिए, एक और तालिका बनाएं (मेरे मामले में "_t" प्रत्यय के साथ) जिसमें अनुवादित फ़ील्ड हैं। जब आप SELECT * FROM products
, बस ... LEFT JOIN products_t ON products_t.id = products.id AND products_t.language = CURRENT_LANGUAGE
पर LEFT JOIN products_t ।
इतना कठिन नहीं है, और आपको सिरदर्द से मुक्त रखता है।