为二维表设置核心数据
Posted
技术标签:
【中文标题】为二维表设置核心数据【英文标题】:Setting up Core Data for 2 dimensional table 【发布时间】:2017-08-16 01:38:19 【问题描述】:+----+------------+------------+------------+
| id | infinitive | ind pre je | ind pre tu |
+----+------------+------------+------------+
| 1 | aimer | aime | aimes |
| 2 | aller | vais | vas |
| 3 | courir | cours | cours |
| 4 | servir | sers | sers |
| 5 | mourir | meurs | meurs |
| 6 | dormir | dors | dors |
| 7 | sentir | sens | sens |
| 8 | vêtir | vêts | vêts |
| 9 | fuir | fuis | fuis |
| 10 | tenir | tiens | tiens |
+----+------------+------------+------------+
我正在开发一个法语变位应用程序,该应用程序通过以不定式形式显示动词和所需时态来测试用户的变位。目标是让用户输入该动词的共轭形式并按下按钮来检查他们的答案。如果答案正确,则会生成一个新的动词,等等。
我有一个二维数据集,请参阅上表了解数据的小规模版本。我正在尝试找出如何最好地在核心数据中设置我的数据库,因为它显然不适合核心数据所具有的一维实体属性模型。
理想情况下,我希望能够允许用户选择他们想要测试的时态,并对动词进行分类 - 常规形式、不规则形式、常用动词等。
我是否应该让每个共轭动词成为与其代词相关的实体,代词与其时态相关,而时态又与其不定式动词形式相关?
例如:
ate
- I
- Past tense
- to eat
(共轭形式)-(代词)-(时态)-(不定式)
【问题讨论】:
我不会法语,所以我不太明白,但是,你可以创建一个具有属性的实体 - id、不定式、ind pre je 和 ind pre tu。 【参考方案1】:我建议存储两个实体:动词和变位。动词与变位是一对多的关系。
所以Verb
将具有以下属性:infinitive
、isRegular
conjugations
(关系)
每个共轭都会有:verb
(关系)、tense
、pronoun
、conjugation
。
为代词或时态设置一个实体是没有意义的,因为它们是固定的(总是正好有 3 个时态)并且不会随着用户的数据而增加或减少。因此,将这些值作为枚举更有意义。
【讨论】:
以上是关于为二维表设置核心数据的主要内容,如果未能解决你的问题,请参考以下文章