我的基本要求是我在语言表中有一些语言。然后我用不同的语言添加我的单词和翻译。所以为了存储这些数据我希望我是对的,情况就是一对多的关系。 请看一下图片。
我正在使用正确的设计吗?或者它可能比这更好?有什么建议吗?答案 0 :(得分:1)
可以使用以下表格:
答案 1 :(得分:0)
这是我的建议。 我通常在表名前面添加ID,以便于阅读。显然,您可以使用您喜欢的命名标准。
Language
- LanguageID
- Description
Term
- TermID
Translation
- LanguageID
- TermID
- Text
至于翻译表的密钥,它取决于每种语言允许的翻译量。
如果您允许多个,请添加TranslationID。
如果您只想强制使用一个,请使用LanguageID和TermID的连锁键。见How to properly create composite primary keys - MYSQL
我知道有一个只有一个键的表看起来很奇怪,但这个结构有很多优点。
以下是如何使用它的示例
Language
1 English
2 French
3 Spanish
Term
1
Translation
1 1 Dog
1 1 Hound -- (if this is allowed, add a TranslationID)
2 1 Chien
3 1 Perro