您好,我正在考虑使用多语言数据库的Web

时间:2017-07-30 13:11:25

标签: mysql web

我看到了很多类型的数据库和表格,但是网络上人们插入不同语言的数据(有些人用英语,有些用西班牙语等)。网站可以使用这些语言打开,也可以选择哪种语言,请使用此语言查看网页。关键是,英国人看到数据,插入了什么英文数据。 我应该有所有语言的表格(当“可能”相同的信息不具有相同的ID时)?

谢谢你们。

1 个答案:

答案 0 :(得分:0)

没有必要为每种语言都有一个单独的表。但当然,一切都取决于您的类型和数据量。而且,一些数据不需要任何翻译。这只是人们为不同图片存储一些描述的一个例子:

table pictures (picture_id, picture_url, description_id)
table desciptions (id, desciption_id, description_text, lang_id)

所以,你的基本查询看起来像这样:

select * from pictures JOIN desctiptions ON (description_id)
where lang_id = X;

因此,所有语言的图片都相同,描述将以特定语言X显示。请注意,您可以在同一个表格中存储所有语言的描述。

嗯,这只是一个建议......可能会对你未来的研究有所帮助。

更新:回答有关相同翻译数据的不同ID的评论。现在我将在这两个表中给出一个数据示例:

图片:

1,'image.jpg',1

2,'image2.jpg',2

说明:

1,1,'some text',1

2,1,'algúntexto',2

3,2,'另一个文字',1

4,2,'otro texto',2

在这里你可以看到,description_id实际上是指某种元描述文本(如果可以的话),可以是多种语言。

但正如我所说,如果数据很大,你也可以为不同的语言设置单独的表。你只需要保证,同一文本的不同翻译共享一些共同的id。

抱歉,如果那不是你问的问题,但我已经理解了我的做法,并尽力帮助。