如何关联数据库中单个属性的值
How to relate values of a single attribute in database
我对如何在 MYSQL 数据库中的单个属性的值之间建立关系感到困惑,例如我在数据库中有两个表名为 "Language" 和 "Dictionary" 所以在实体 "Language" 中有两个属性第一个是 "language_id" 另一个是 "Name" 在 language_id 存储语言名称的 id,并在属性 "Name" 中存储语言名称,例如"language_id = 201" "Name = English" 和实体 "Dictionary" 中有三个属性 第一个是 "id" 这是主键 第二个是 "Word" 其中单词根据名称存储语言和第三种是 "language_id" ,它被用作外键来实现一对多关系。现在的困惑是,如果我用不同的 language_id 存储两种不同的语言,例如英语和乌尔都语,那么它们的外键会成功地存储在属性 "Word" 中,但是我如何关联两个不同的词具有相同含义的语言以实现翻译。所有的回复都值得赞赏。谢谢
我的第一个想法是在词典中添加一个额外的列来引用主词。这两个表可能如下所示:
Language
--------
language_id
name
Dictionary
----------
id
word
language_id
primary_id
如果主词是英文,它的 primary_id 将为空。添加的每种后续语言都会将 primary_id 设置为英语单词的 ID。
language_id | name
----------- ----
201 | English
202 | Spanish
id | word | language_id | primary_id
-- ---- ----------- ----------
1 | hello | 201 | null
2 | goodbye | 201 | null
3 | hola | 202 | 1
4 | adios | 202 | 2
我对如何在 MYSQL 数据库中的单个属性的值之间建立关系感到困惑,例如我在数据库中有两个表名为 "Language" 和 "Dictionary" 所以在实体 "Language" 中有两个属性第一个是 "language_id" 另一个是 "Name" 在 language_id 存储语言名称的 id,并在属性 "Name" 中存储语言名称,例如"language_id = 201" "Name = English" 和实体 "Dictionary" 中有三个属性 第一个是 "id" 这是主键 第二个是 "Word" 其中单词根据名称存储语言和第三种是 "language_id" ,它被用作外键来实现一对多关系。现在的困惑是,如果我用不同的 language_id 存储两种不同的语言,例如英语和乌尔都语,那么它们的外键会成功地存储在属性 "Word" 中,但是我如何关联两个不同的词具有相同含义的语言以实现翻译。所有的回复都值得赞赏。谢谢
我的第一个想法是在词典中添加一个额外的列来引用主词。这两个表可能如下所示:
Language
--------
language_id
name
Dictionary
----------
id
word
language_id
primary_id
如果主词是英文,它的 primary_id 将为空。添加的每种后续语言都会将 primary_id 设置为英语单词的 ID。
language_id | name
----------- ----
201 | English
202 | Spanish
id | word | language_id | primary_id
-- ---- ----------- ----------
1 | hello | 201 | null
2 | goodbye | 201 | null
3 | hola | 202 | 1
4 | adios | 202 | 2