【发布时间】:2012-05-03 00:59:39
【问题描述】:
我有一个要在 MySQL 中实现的基本数据模型。我将使用 mysqldb 和 SQLalchemy 来做数据部分,从一些 XML 中获取一些数据。
我不太确定如何实现我想做的事情,我想知道是否有人能指出我正确的方向。
我有几个表,每个表都包含一部分数据。
Table 1 - recordTitle, recordID, recordDate
Table 2 - recordProp1, recordProp2, recordProp3
Table 3 - recordPropA, recordPropB, recordPropC
所有的表在自己的空间中都是唯一的,但是T1可以有很多T2和T3,T2/T3可以属于很多T1。有道理?
我想解决这个问题的方法是有一个第四张桌子:-
表 4 - T1ref、T2ref、T3ref
并在 T1-3 中有一个名为 TnRef 的新列,基本上是该表的主键。
- 这听起来是一种明智的做法吗?
- 我想在填充数据时,我需要检查每个表条目的唯一性,如果是,我会捕获 TnRef 值,如果不是,我插入新行并在之后收集 TnRef 值。获得值后,我可以填充将所有内容链接在一起的 T4 行。
- ORM 是执行此操作的正确工具吗?
【问题讨论】:
-
那是实际数据库的抽象符号——我更关心如何在 MySQL 中实现 FK 和 PK 的机制。据我所知,我认为实际的数据模型是标准化的。
标签: mysql database orm foreign-keys sqlalchemy