0

我将使用 MySQL 作为 Java 程序的数据库。Java 程序将包含一个肌肉和锻炼锻炼目录。为了存储有关肌肉的信息,我制作了一个名为“muscles”的表格。此表中的主键应该是肌肉的名称。但它还应该包含以下数据: - 肌肉属于哪个身体部位 - 它包含哪些肌肉头。 哪些运动激活它 - 哪些肌肉与之相关

对于主键,我想要某种字符串值,我猜 Varchar() 是我正在寻找的,但 MySQL 不允许我选择它作为主键。现在在意识到我可以选择多少种类型后,我有点困惑,这将是最佳选择。我猜一个叫做“Text”或“Tinytext”的会是最佳选择,你能确认这是一个正确的选择吗?

4

1 回答 1

0

首先,您的问题并没有真正指定足够的信息来提出真正的数据模型,但首先您不希望将肌肉名称或其他一些字符串值作为主键。为了简单起见,并且知道此表中的记录不会超过 1000 条。我会从这个开始。

一张表,其中所有主要肌肉由 Int 唯一标识,您可以在构建数据时分配它,这是您在表 1 上的 PK。我还会在此表中有一个肌肉组,它是具有所有肌肉的表的 FK包含Muscleheads 的组。

1 个表,其中包含 PK/FK 与第一个表相关的每个肌肉头,还包含身体部位信息。

1 表中包含与第一个表中的 Muscleheads 和 ultimatley Muscles 相关的锻炼信息。凭借 PK 关系。

这个想法是你从高水平的肌肉基础开始。由于肌肉群是一种收集和分组这些肌肉的方法,因此您希望在此表中具有这种能力。然后,每当您获得 1:n 关系时,您基本上都需要另一个与高级基表具有主键关系的表。

因此 - 肌肉:Muscleheads 或 Muscleheads:Excercise 活动

于 2013-05-05T13:05:28.190 回答