我想用各种语言创建一个包含世界各国的数据库,但我不知道最好的方法是什么。
也许创建一个包含idCountry
的表格,并在每列中使用不同语言的国家/地区名称?与nameEN
,nameES
一样
或者也许为每种语言创建一个表,命名为countriesEN
,countriesES
......
感谢您的回答!
答案 0 :(得分:2)
好的,基本要求如下(尽管您可以争论代理键是否必要或适当......):
您需要从核心语言开始。如果你愿意,这可能是克林贡语,但让我们使用英语......
country (country_id*,common_name_of_country_in_english)
language (language_id*,name_of_language_in_english)
country_in_language(country_id*,language_id*,name_of_country_in_language)
* = (component of) PRIMARY KEY
顺便说一下,世界上大约有250个国家(可能是今天结束时的新国家)和7,000种语言,所以你将会很忙。
答案 1 :(得分:0)
嗯,您必须考虑一些方面,例如创建数据库所需的可维护性,性能和工作量。如果它将成为一个相当大的系统,我会创建一个Language,Country和CountryName表。看起来有点像这样:
Country
id
Language
id
key
name
CountryName
id
name
Country_id
Language_id
像这样,您可以避免重复并拥有一个完整的normalized数据库。