Sql 为了保持简单的结构,我需要创建哪些表?
我不太擅长SQL,请大家给我提建议,我需要哪些表,以及如何进行选择。我有一个Sql 为了保持简单的结构,我需要创建哪些表?,sql,Sql,我不太擅长SQL,请大家给我提建议,我需要哪些表,以及如何进行选择。我有一个recordId,它可能有几个标题,可能有几个字段。所有这些都只是Strings。通过选择recordId,我需要获取相关的标题及其字段 tbl_record recordId tbl_headers headerId tbl_fields fieldId tbl_record_to_headers id recordId headerId tbl_header_to_fields id headerId fie
recordId
,它可能有几个标题
,可能有几个字段
。所有这些都只是String
s。通过选择recordId
,我需要获取相关的标题
及其字段
tbl_record
recordId
tbl_headers
headerId
tbl_fields
fieldId
tbl_record_to_headers
id
recordId
headerId
tbl_header_to_fields
id
headerId
fieldId
是吗?您需要3张桌子 记录:记录id 标题:标题id、记录id、标题val
字段:field_id、Header_id、field_val有单独的表,不需要在数据表中建立关系-对于那些多对多表
tbl_record_to_headers
和tbl_Header_to_字段
你为什么这么认为?仅仅因为需要添加两个单独的表,您就将离开多对多?当PM来告诉您这样做时,您会怎么做?您将拥有带有关系列的大数据表,顺便说一句,没有many-to-many
选项,这可能是将来需要的-相当硬的核心字段是否可以有多个标题?标题可以有多条记录吗?如果这两个问题的答案都是否定的,那么Yossi的解决方案就足够了。如果您对其中任何一个都回答是,那么您将需要FSou1所展示的多对多风格的解决方案。