The 是一家为房地产经纪人竖立董事会的公司,例如出售,出租董事会。
代理发布职位时,会存储版块地址、拥有版块的代理和职位类型。
注意:属性前面的星号是主键,后面的星号是外键。并非所有表格都显示
// background info to help understand the project more
AGENTS
*agent_id
agency_name
agency_office
address_id*
BOARDS
*board_id
client_id*
address_id*
PENDING_JOBS
*job_id
board_id*
job_type_id*
notes
submitted_on
现在我有一个工作类型表。每个工作都有一个:
- board_id (添加客户和董事会所在的位置)
- job_type_id(是否放板、取下、更换、添加销售单等)
这是我的工作类型表
JOB_TYPES
*job_type_id
action
board
slip
并且数据看起来像这样:(省略行)
JOB_TYPES
id | action | board | slip
-----------------------------------
1 | up | for sale | sold
2 | up | to let | let by
3 | up | for sale | null
4 | up | to let | null
5 | down | null | null
6 | service call | null | null
我一直在尝试有效地规范化我的数据库,并且根据规范化,您应该在表中只有直接依赖于 ID 的数据,例如 agent_name 和 agent_office 直接依赖于 agent_id!
但是在job types表中,SLIP直接依赖于BOARD列,而board列直接依赖于action列。
但是,用一个键将所有列挑出到单独的表中肯定是不对的吗?
我想我的模糊问题是:
Is this okay?
Or in the real world, do people use better method or storing data like this?