国际国家数据库清单

时间:2015-02-01 19:03:43

标签: mysql sql database

我找到了几个数据库,但没有一个满足我的需求。

我看到的每个地方都有用英语或其他语言书写的国家名称,但我需要用目标国家/地区的语言撰写国名。

例如,我来自“巴西”,但我需要一个名为“Brasil”的数据库,因为这就是我们在这里所说的。

我最好找一个SQL数据库,但任何事情都可以。

3 个答案:

答案 0 :(得分:1)

你应该做的是有一个国家表格,如:

create table country (
country_id integer
, country_name varchar(255)
, /* any other columns you want */
)
;

然后有一个像这样的国家翻译查找表:

create table country_translation (
country_id integer /* make it a foreign key on the country table pk */
, language_id integer /* make it a foreign key to a language table */
, country_translation varchar(255)
);

然后在您的查询中,您执行以下操作:

select coalesce(t.country_translation,c.country_name) country_name
from country c
   left join country_translation t on t.country_id = c.country_id
         and t.language_id = ? /* whatever language you feed it */

然后它将根据查询中的输入language_id动态提取翻译版本,或者返回标准化的英文版本。

答案 1 :(得分:0)

我建议您检查一下这个GitHub存储库:

https://github.com/turalus/openDB

答案 2 :(得分:0)

我最近为国家创建了一个数据库。但是,它可能无法满足您使用目标国家/地区的语言命名的要求。无论如何,这里是link