小编Mac*_*ski的帖子

单列连接表 - 有意义吗?

我继承了一个数据库架构,它看起来类似于下面的一个:

CREATE TABLE Products (
    ProductID int not null PRIMARY KEY,
    StoreGroupID int not null,
    -- product properties...
)

CREATE TABLE Stores (
    StoreID int not null PRIMARY KEY,
    StoreGroupID int not null,
    -- store properties...
)
Run Code Online (Sandbox Code Playgroud)

这个想法是一个产品和一组商店之间存在 1-* 对应关系(一个产品总是由一组商店携带,一组商店可以携带多种产品)。

然而,当前的数据库没有定义任何类型的“商店组”实体——StoreGroupID而是由业务逻辑代码从序列中分配,完全任意,没有外键约束。

创建一个StoreGroup表是否有意义,即使它可以携带的唯一列是StoreGroupID? 或者有没有另一种方法来模拟这种关系?

database-design

5
推荐指数
1
解决办法
458
查看次数

标签 统计

database-design ×1