繁体   English   中英

在MySQL DB中存储翻译的最佳方法

[英]The best way to store translations in MySQL DB

我正在研究多语言网站。

例如,1 lang的DB表pages就是这样

在此输入图像描述

现在,我有2个关于翻译的想法:

  1. 要以默认语言使用所有表格 - 英语并创建第二个表格 - translations仅在需要时才使用它。

  2. 或者将title_ru,title_en等列添加到现有表中。

哪种更快,更有效? 请解释你的想法(为什么你这么想)

我不会选择你的解决方案。

为每种语言创建新表并不是最佳选择,因为您必须根据选择的语言修改每个查询。 此外,添加新语言应该是一项相当简单的任务,这意味着添加新的表模式并更新整个代码库。

同样,为每种语言添加新列也会出现同样的问题。

为什么不只是有一个字典表,语言ID作为PK的一部分。 编写您的网站,根据当前语言ID选择文本(1 =英语,2 =俄语等)

然后在运行时切换到另一种语言,所涉及的所有内容都是在代码中将语言ID设置为1到2,并且所有查询都将继续工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM