i18n使用数据库

时间:2012-03-31 22:26:04

标签: database internationalization

我必须设计一个允许我以多种语言存储数据的数据库。我想出了类似的东西。


create table lang ( id primary key, lang_code )
create table data (id primary key)
create table i18n_data (id primary key, i18n_text ,data_id references data, lang_id references lang)

创建一个只有一列/主键的表是否符合我的要求?有没有更好的方法呢?

感谢。

2 个答案:

答案 0 :(得分:0)

我认为你的解决方案非常好,我以同样的方式解决这些问题。我不会害怕只使用主键创建一个表(尽管你可能会发现一些属于这个表的属性)。

答案 1 :(得分:0)

在我的头顶,我看到两个类似的选择:

lang中只有两个表格i18n_datai18n_data以及索引字段,您可以使用该语言为翻译编制索引。

另一种选择可能是在i18n_data表上使用组合主键,该表具有对langdata标识符的引用。