我遇到了一些让我烦恼的事情,以至于我想来这里向你们(和女孩)寻求一种“最佳实践”类型的建议
我的模型中有一张桌子,我们称之为prospect
. 两个独立的外部系统可以为该表中的行提供更新,但仅作为相应系统中该记录的“状态”。
我需要在本地存储这些状态。最初的想法,当然,它只是为了制作两个可以为空的外键。像这样的东西。
+-----------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------------+--------------+------+-----+---------+----------------+
| prospect_id | int(11) | NO | PRI | NULL | auto_increment |
| ext_status_1_id | int(11) | YES | | NULL | |
| ext_status_2_id | int(11) | YES | | NULL | |
+-----------------+--------------+------+-----+---------+----------------+
在这个例子中,当然会有两个表,其中包含状态的 id/value 对。
这是一个问题 -除非是(这正是业务规则的工作方式),否则ext_status_2_id
将始终为 NULL 。ext_status_1_id
1
我是否正确建模了这个?我只是在我的大脑后面有一个唠叨的声音告诉我“不是每一行都需要一个ext_status_2_id
,所以这可能是不正确的”。
如果重要的话,这是 MySQL 5.0.45,我正在使用 InnoDB