如何制作此架构?

时间:2011-09-13 10:47:01

标签: sql schema

我有一个名为tbl_AllowedIpRange的表,其中包含以下列:

  

ipFrom | IPTO

我有两个表,表示可以允许分配给它们的IP的实体。 tbl_Category和tbl_MediaItem。

我想知道如何链接这两个表以重用tbl_AllowedIpRange表并将内容保存在3nf中?

我在想我可以在tbl_AllowedIpRange表中放两列?

  

CategoryId | MediaItemId | ipFrom | IPTO

然后写两个方法来获取每个表的alloed ip,试图访问它。

  

注意:我不能在单个列中使用一个外键   tbl_AllowedIpRange因为它将包含来自的冲突键   其他表格,因为它将指向他们的主键....

使用链接表是否有更简单的方法?

1 个答案:

答案 0 :(得分:0)

您的表tbl_AllowedIpRange应该有一个自动增量PRIMARY KEY,您可以在其他表中引用它。所以......

1。将可引用的主键添加到表tbl_AllowedIpRange

range_id | ipFrom | ipTo

2。创建一个表来保存tbl_Categorytbl_AllowedIpRange

之间的关系

建议的表格名称:Category_AllowedIpRanges

category_id | range_id

3。创建一个表来保存tbl_MediaItemtbl_AllowedIpRange

之间的关系

建议的表格名称:MediaItem_AllowedIpRanges

mediaitem_id | range_id