抽象概念与MySQL中的表相关吗?如果是这样,我该怎么办?

前端之家收集整理的这篇文章主要介绍了抽象概念与MySQL中的表相关吗?如果是这样,我该怎么办? 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我想将各种引擎上的数据存储在MySQL数据库中,该数据库包括活塞引擎和旋转引擎.

在OO语言中,我可以创建和扩展Engine超类以获得PistonEngine和RotaryEngine子类.

PistonEngine子类将包含诸如CylinderNo,PistonBore和PistonStroke之类的属性.

RotaryEngine子类将包含RotorThickness和RotorDiameter之类的属性.

MysqL中,虽然我可以分别为活塞式发动机和旋转式发动机创建两个单独的表,但我还是希望保留EngineType字段作为发动机数据的一部分,并将这两种发动机类型共有的所有数据存储在一个表中.

如何设计数据库以尽可能避免数据冗余?

最佳答案
在这种情况下,我将创建四个表.

一种称为EngineTypes,其中只有您的引擎类型的ID /值对
1个旋转
2活塞

一种称为“引擎”,其中包含与活塞式发动机和旋转式发动机相关的信息.它将在其中包含引擎类型ID的列.

一个名为RotaryEngineDetails的表,其中包含您的所有旋转引擎特定数据.它将具有您的引擎表的外键.

一个名为PistonEngineDetails的表,其中包含您所有活塞发动机的特定数据.

猜你在找的MySQL相关文章