为二维表设置核心数据

+----+------------+------------+------------+ | 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 | +----+------------+------------+------------+ 

我正在研究一个法语共轭应用程序,通过显示一个不定式forms的动词和所需的时态来testing用户的共轭。 目标是让用户input该动词的共轭forms并按下button来检查他们的答案。 如果答案是正确的,会产生一个新的动词,等等。

我有一个二维数据集,请参阅上面的表格,了解小数据版本的数据。 我正在努力研究如何最好地在核心数据中设置我的数据库,因为它不能很好地适应核心数据所具有的一维实体属性模型。

理想情况下,我希望能够允许用户select他们想要testing的时态,并对动词进行分类 – 常规forms,不规则forms,普通动词等。

我应该让每个共轭动词与它的代词具有关系的实体与它的时态有关系,而这又与它的不定式动词forms有关系吗?

例如。:

ateIPast tenseto eat

(共轭forms) – (代词) – (时态) – (不定式)

我build议存储两个实体:动词和变形。 动词与变形有一对多的关系。

所以Verb将有以下属性: infinitiveisRegular conjugations (关系)

而每一个共轭都会有: verb (关系), tensepronounconjugation

具有代词或时态的实体是没有意义的(因为它们总是有3个时态)并且不随用户的数据而增加或减less。 所以这些值更有意义是枚举。